如何确保有关访问者的IP?
-
22-08-2019 - |
题
我有一个博客网站聚集
故事被访问的次数进行排序
我觉得我现在面临的访问垃圾邮件
,因为一些博客的故事收到大量的访问在相同的第二与传出IP地址
我的网站不允许来自同一IP访问;然而,我的游客不知何故改变他们的IP。
是他们的任何解决方案,以检测这种垃圾邮件的访问?我不知道谷歌的Adsense如何解决这样的问题?
由于
解决方案
在简短的回答是,这是不可能阻止攻击者如果一个未经验证的访问是改变你的故事的订单所需的唯一的事情。 你可能要考虑实施的注册用户投票系统。
然而,你可以收集一些信息,并结合所有的人:
1)用户代理,点击 2)IP地址点击 3)X - 转发,对于报头(如果可用)
很多时候攻击者将通过不同的用户代理懒惰和不循环。如果您设置您的系统来处理,在一定的时间间隔访问信息(而不是实时的),你可能会过滤掉坐堂同时具有完全相同的用户代理存在的大集合。
您总是可以从网站,如antiproxy.com下载代理数据库,但事实是,今天最精心策划的攻击来自哪些还没有被证明僵尸网络节点。这是完全有可能为您的网站通过与异质交通的攻击是从正常的访问者无法区分有针对性。
目前最起码,我建议改变你的实施,使用户可以在故事进行投票,并要求验证码。
其他提示
使用PHP,你可以检查$ _ SERVER [“HTTP_X_FORWARDED_FOR”]变量对IP地址多一点保证客户端是,他说他是谁。这将有助于通过一些代理识别人。
我有时使用此功能。但是,正如其他人所说的,它可以是很难得到正确的IP 100每%的时间。
我不记得在那里我得到了从功能,但它似乎是在互联网上相当普遍。
function getRealIpAddr()
{
if (!empty($_SERVER['HTTP_CLIENT_IP']))
{
$ip=$_SERVER['HTTP_CLIENT_IP'];
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
}
else
{
$ip=$_SERVER['REMOTE_ADDR'];
}
return $ip;
}
您不能可靠地检测IP
它可以通过代理来,或者它可以被欺骗。
不隶属于 StackOverflow