php代码禁止搜索引擎蜘蛛

时间:2021-07-11 18:37:43
其实robots.txt也不是百分之百的可以阻止蜘蛛爬行你的网站,我自己结合某些资料写了一小段代码,貌似可以彻底解决这个问题,不对的地方请大家多多指教:

if(preg_match("/(Googlebot|Msnbot|YodaoBot|Sosospider|baiduspider|google|baidu|yahoo|sogou|bing|coodir|soso|youdao|zhongsou|slurp|ia_archiver|scooter|spider|webcrawler|OutfoxBot)/i", $_SERVER['HTTP_USER_AGENT']))
{

header('HTTP/1.1 403 Forbidden');
exit;
}

10 个解决方案

#1


LZ的思路我懂了    但是每个文件都包含这段文字还是主页包含就好了?

#2


哦,忘记说一句,我的系统是单一入口,直接加入口文件中即可。多入口那没办法,只好各个入口文件头部都加了

#3


这招绝

#4


领教了,灭绝师太

#5


不错!!!
不过为什么要阻止那?蜘蛛们多爬行不是更利于搜索引擎收录你的站点,更利于推广?

#6


引用 5 楼 sink 的回复:
不错!!!
不过为什么要阻止那?蜘蛛们多爬行不是更利于搜索引擎收录你的站点,更利于推广?


有些东西是不希望被搜索引擎收录的,比如涉及到邮件地址、电话号码、姓名等信息

#7


引用 6 楼 voteon83 的回复:
有些东西是不希望被搜索引擎收录的,比如涉及到邮件地址、电话号码、姓名等信息


有道理!!!!

#8


这种方式能阻止的都是“友好的蜘蛛”,当然也许这些“友好的蜘蛛”并没有完全尊重 robots.txt 的指示,但它至少告诉了你“我是××蜘蛛”。

如果是不友好的蜘蛛,这种判断也就失效了。

#9


php代码禁止搜索引擎蜘蛛
如果是不友好的蜘蛛,这种判断也就失效了。

确实,比如某些黑客写的貌似“万能蜘蛛”一类的   他就不申明“我是xx蜘蛛”,那就无法抵挡了。

#10


对于不友好的蜘蛛,如果一定要防范的话,可以考虑从行为特征入手,比如 request 密度、关联性等。这样虽不能百分百杜绝蜘蛛,但至少可以抵御相当一部分无效流量。

php代码禁止搜索引擎蜘蛛
————————————————————————————————
基于CSDN论坛提供的插件扩展功能,自己做了个签名档工具, 分享给大家,欢迎 技术交流 :)

#1


LZ的思路我懂了    但是每个文件都包含这段文字还是主页包含就好了?

#2


哦,忘记说一句,我的系统是单一入口,直接加入口文件中即可。多入口那没办法,只好各个入口文件头部都加了

#3


这招绝

#4


领教了,灭绝师太

#5


不错!!!
不过为什么要阻止那?蜘蛛们多爬行不是更利于搜索引擎收录你的站点,更利于推广?

#6


引用 5 楼 sink 的回复:
不错!!!
不过为什么要阻止那?蜘蛛们多爬行不是更利于搜索引擎收录你的站点,更利于推广?


有些东西是不希望被搜索引擎收录的,比如涉及到邮件地址、电话号码、姓名等信息

#7


引用 6 楼 voteon83 的回复:
有些东西是不希望被搜索引擎收录的,比如涉及到邮件地址、电话号码、姓名等信息


有道理!!!!

#8


这种方式能阻止的都是“友好的蜘蛛”,当然也许这些“友好的蜘蛛”并没有完全尊重 robots.txt 的指示,但它至少告诉了你“我是××蜘蛛”。

如果是不友好的蜘蛛,这种判断也就失效了。

#9


php代码禁止搜索引擎蜘蛛
如果是不友好的蜘蛛,这种判断也就失效了。

确实,比如某些黑客写的貌似“万能蜘蛛”一类的   他就不申明“我是xx蜘蛛”,那就无法抵挡了。

#10


对于不友好的蜘蛛,如果一定要防范的话,可以考虑从行为特征入手,比如 request 密度、关联性等。这样虽不能百分百杜绝蜘蛛,但至少可以抵御相当一部分无效流量。

php代码禁止搜索引擎蜘蛛
————————————————————————————————
基于CSDN论坛提供的插件扩展功能,自己做了个签名档工具, 分享给大家,欢迎 技术交流 :)