PHP通过301、302跳转站的方式简单进行防止镜像、劫持

2016-01-21 19:48:00
admin
原创
2312

网站被人恶意镜像劫持 了怎么?

黑帽有一种手法就是做跳转站,把真实的网站进行隐藏, 只开放给谷歌、雅虎、必应等蜘蛛进行访问,

其他人访问时会直接跳转到目标站,目标找用来展现给实际的用户。


这种推站方法相当于是把原始站进行了隐藏,然后进行推广,除了爬虫蜘蛛,别人是无法获取到您网站的真实数据,自然也就无法进行镜像和劫持操作了。


下面这段代码简单的实现了对常用几种蜘蛛的跳转处理:


$useragent = strtolower($_SERVER['HTTP_USER_AGENT']);
if (strpos($useragent, 'googlebot') !== false || strpos($useragent, 'yahoo') !== false || strpos($useragent, 'bingbot') !== false){
	return;
}else{
	preventAccess301();
}

// 301跳转模式
function preventAccess301() {
	Header("HTTP/1.1 301 Moved Permanently");
	Header("Location: ".MY_SITE);
	exit();
}

// 302跳转模式
function preventAccess302() {
	Header("Location: ".MY_SITE);
	exit();
}

使用方法:将以上代码放置于网站公共引用文件的最上面,即可生效。


备注:请求的useragent是可以伪造的,以上通过useragent进行判断只是最简单的示例,如果要达到100%的对蜘蛛进行识别的话,这个就需要后台对请求的ip进行预处理了,如果需要更安全的处理,可以联系我们的客服进行咨询。

发表评论
评论通过审核后显示。
 
在线咨询
售前咨询
售后支持
电话咨询