我有一个自定义404页面,它有两个主要目标:
- 记录404错误,这样我就可以修复断开的链接,并找到邪恶的人搜索漏洞
- 重定向到实际已移动页面的301永久移动的正确位置
其他所有内容都被重定向到主页。我遇到的问题是机器人。谷歌是最糟糕的,他们每隔几天就会尝试抓取不存在的页面。我甚至试着在我的robots.txt中添加不允许的页面,但出于某种原因,他们忽略了它。这些页面仍然会出现在他们的搜索结果中!
我想妥善解决这个问题,所以我正在寻求建议。注意,这是一个付费的网络主机,因此更改网络服务器设置可能不是一个选项。Web服务器正在运行带有IIS 7的Windows。
我遇到的一些问题:
如果我检测到Googlebot(和其他一些主要的机器人)并手动发送404状态代码,Web服务器就会捕获它并尝试重新执行自定义404页面,我就会进入一个无限循环。
如果我让页面打印一条消息,它会以200的状态代码进行响应。
您应该了解https://www.google.com/webmasters/
机器人试图索引的文件必须曾经存在或链接过,谷歌上面的链接会告诉你它请求的页面以及其中有多少是404。
你的robots.txt一定不正确,谷歌才会忽略它,因为他们肯定遵守规则,否则他们会遇到很多麻烦。
你可以确保谷歌确实在使用最新的robots.txt以及使用链接,它会让你知道它是否有任何问题。
要使用301标签重定向,您可以简单地执行以下操作:
Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://website.com" );
您只需要先将所有相关信息插入数据库即可。