同一台电脑,如何限制他在一分钟内只能访问5次某个域名的动态页面。超过五次的,就跳转到指定静态页。

WBOY
發布: 2016-06-23 14:39:24
原創
1440 人瀏覽過

同一台电脑,如何限制他在一分钟内只能访问5次某个域名的动态页面。超过五次的,就跳转到指定静态页。


回复讨论(解决方案)

这样做的意义是什么呢?减轻服务器压力?

这样做的意义是什么呢?减轻服务器压力?

一个IP就看作是一个电脑,在后台做一个访问次数池,定时每分钟清空一次,访问一次对应ip加一

IP不行,可以用cookie

IP不行,可以用cookie

求案例代码。。。

我想到了用cookie限制,但是不知道具体怎么写才合理高效。。

纯用JS操作cookie就可以了啊

<?php$filePath = '';$uuid = isset($_COOKIE['UUID']) ? $_COOKIE['UUID'] : false;//第一次访问if ($uuid === false){	//生成唯一的cookieID	$userCookieId = md5($_SERVER['REMOTE_ADDR'].time());//SERVER_ADDR	setcookie('UUID', $userCookieId);	logVisitCount('1',"{$filePath}{$userCookieId}.txt");	echo 'first visit!';	exit;}//得到访问次数$visitCount = @file_get_contents("{$filePath}{$uuid}.txt");if ($visitCount === false){	$visitCount = 1;	logVisitCount('1', "{$filePath}{$uuid}.txt");}else{	if ($visitCount > 5)	{		echo "It's max";		exit;	}	$visitCount++;	logVisitCount($visitCount, "{$filePath}{$uuid}.txt");}echo "visit count : {$visitCount}";function logVisitCount($str, $file){	$handle = fopen($file, 'w');	fwrite($handle, $str);	fclose($handle);}
登入後複製


简单写了一下,你改改吧。。

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板