如何防止访问者恶意刷新网页??????????????????????????????
因为网页都是动态的,如果有人恶意刷新网页会增加服务器的的负担。如何才能防止这种情况? 问题点数:20、回复次数:11Top
1 楼kakapowu()回复于 2005-08-27 18:07:26 得分 2
让他刷!Top
2 楼kakapowu()回复于 2005-08-27 18:11:31 得分 2
一般人是靠浏览器的刷新功能,高手也不会这么无聊,写个程序去不断读你的页面吧?况且如果这样服务器就承受不了,就不要开网站了。Top
3 楼zairwolfi(君子兰)回复于 2005-08-28 00:31:17 得分 2
设定一个session时间。Top
4 楼loveconan(放牛娃娃)回复于 2005-08-28 02:48:16 得分 0
设定session时间然后怎么的?Top
5 楼raid79(山鹰)回复于 2005-08-28 08:16:16 得分 2
比如是5秒,如果在5秒内刷新就拒绝Top
6 楼yifanwu(逸凡)回复于 2005-08-28 14:33:59 得分 2
是你仇家?如果是日本人,你给我他的网站,我帮你去黑他Top
7 楼wxq4100798(aa)回复于 2005-08-28 15:10:46 得分 2
____session吧看看动网的就知道他怎么实现的了Top
8 楼ray929(猪头)回复于 2005-08-28 15:36:54 得分 5
奉献一段我自己写的防刷新代码 有点粗糙 呵呵 讲究用用
////防过快刷新代码开始/////////////////////////////////////
list($usec, $sec) = explode(" ",microtime());
$time_start = ((float)$usec + (float)$sec);
unset($usec);unset($sec);
if(!isset($_SESSION['last_active_time'])) {
$_SESSION['last_active_time'] = $time_start;
} else {
if(($time_start-$_SESSION['last_active_time'])<0.6) { //0.6秒的防刷新时间
$_SESSION['last_active_time'] = $time_start;
exit("<center><br><br>请勿过快刷新!<br><br><a href=\"{$_SESSION['current_page']}\">点击这里返回</a>");
}
$_SESSION['last_active_time'] = $time_start;
$_SESSION['current_page'] = $_SERVER["REQUEST_URI"];
}
////防过快刷新代码结束/////////////////////////////////////Top
9 楼loveconan(放牛娃娃)回复于 2005-08-31 08:36:14 得分 1
这样的Session写来写去 效果也不怎么样
这种事交给Web服务器和防火墙来做好了Top
10 楼wuruichang(一杯热咖啡)回复于 2005-08-31 10:19:30 得分 1
设定一个时间,比如30秒内不能进行刷新,否则错误提示Top
11 楼blackangel(鞭煽饭)回复于 2005-08-31 11:15:30 得分 1
有个屁用,前提还是会接受请求,还是会占去一个进程~~然后才判断是否输出结果页面Top




