定位 发表于 2016-12-27 18:06:15

防止网站内部搜索被他人恶意利用

1、前续

相信很多站长遇到过这种情况:网站内的搜索功能被不良分子利用,通过在站内搜索框中不断搜索敏感关键词,产生一大批TITLE上带有敏感关键词的垃圾搜索结果页(如下图)。由于Baiduspider对每个站点的抓取额是有限定的,所以这些垃圾搜索结果页被百度收录,会导致其它有意义的页面因配额问题不被收录,同时可能因百度处理垃圾页面而影响网站正常排名。


10月底百度站长平台在上海举办的线下培训QA环节中,学员们就如何防范此类垃圾搜索结果页展开深入讨论。携程SEO主管赖强认为,不良分子这样做的目的就是想让敏感关键词在搜索结果中大量曝光,既然百度对搜索结果页的收录有严格限制,那网站就做得彻底些,不允许搜索关键词出现在TITLE和摘要里,这样恶意操作者无法达成目的自然也不来骚扰
培训结束后,百度站长平台联系了赖强,赖强也很愿意分享携程的具体解决方案:携程在遭遇此类垃圾搜索结果页后,修改了meta调用规划,即避免关键词出现在title/keywords/description处,尝试多种搜索结果页meta的写法后,发现目前这种使用最简短词语的方式效果最佳,不仅突出了页面核心关键词“搜索”,同时再也没有出现过恶意搜索结果页。

二、解决办法
核心思路有两个:A、修改搜索结果页的网页标题(title)、网页描述(description)、网页关键词(keywords)调用规则,不调用用户搜索的词;B、使用robots.txt禁止网址url被搜索引擎抓取收录。可两个思路分别使用,具体如下所述进行操作,但建议A、B同时使用。(由于腾讯qq等展示url的时候会调用title等信息,因此如选择robots,也要做好搜索结果页的title设置)
2.1  修改搜索结果页的网页meta(title/keywords/description)调用规则
2.1.1  meta只显示“搜索”
【做法】修改后的页面meta(title/keywords/description)三部分不再显示用户搜索词,只显示“搜索”二字,title可带**网站名称,如下图

【效果】可避免敏感关键词的搜索结果页被收录,另外还可以避免搜索结果页面抢占其他页面的关键词排名,但会造成网站内大量网页(全部搜索结果网址)的meta一样。
2.1.2  不同类别的搜索结果页meta设置唯一的需布局的关键词
【做法】同样,修改后的页面meta(title/keywords/description)三部分不再显示用户搜索词,但显示某栏目类别下的搜索结果页meta设置的关键词,如下图,属于北京四星级酒店栏目分类下的搜索结果页的meta设置

【效果】可避免敏感关键词的搜索结果页被收录,但可能会出现部分搜索结果页抢占其他页面关键词的排名,因此需要做好关键词布局的整体规划工作。这种做法会造成部分搜索结果页的meta一样。
2.2禁止网址url被搜索引擎抓取收录
【做法】利用robots.txt文件,禁止符合搜索结果页特征的网址被搜索引擎抓取收录,如下图,禁止带search.php特征的网址url被搜索引擎抓取收录。
【效果】理论上,禁止符合搜索结果页特征的网址被百度抓取收录,能提高百度的工作效率,让百度更有精力去抓取其他页面,另外因为不被抓取收录,这些页面自然也就不会在百度搜索结果中出现。但是由于robots.txt由于某些原因不一定能完全让百度不抓取收录,因此如发现百度不遵守robots的情况,可及时利用百度站长工具、快照投诉等机制进行反馈。

583558386 发表于 2017-1-2 18:56:15

这样能防止大部分了啊

愤怒的肥皂 发表于 2017-2-11 11:11:00

好的!又学到了

feihu 发表于 2017-10-4 15:15:46

不错,好文章
页: [1]
查看完整版本: 防止网站内部搜索被他人恶意利用