我最近要求在ServerFault上redirect301 ,我没有得到一个妥善解决我的问题,但现在我有一个新的想法: 使用robots.txt禁止从我的网站某些URL被“抓取”。
我的问题很简单:在从一个专有技术从自定义CMS迁移到WordPress之后,我们有很多Google在新网站上找不到的URL ,并且转到404页面。 这对我们的PageRank和search是不利的,因为Google仍然认为这些页面是活的。
我们有一个不起作用的URL列表,我试图redirect到好的。 问题是, 他们有两万人 ,没有机会用正则expression式来解决问题。 我们必须做一个一个的301redirect,这是一个任务的地狱。
但是我想知道: 我们能不能将robots.txt中的所有不良url列在“Disallow:”前缀中 ,这样Google就不会为它们编制索引了? 这是一个坏主意吗?
如果Google认为您的404页面有效,那么您需要在该页面上返回404响应代码。 解决这个问题,剩下的就可以了。
简单地说,是的,这不是一个好主意。 通过阻止谷歌没有看到网页,它不能确定他们什么,并在某些情况下可以查看他们作为可疑的隐藏不必要的东西。
你应该做的是将任何相关页面redirect到新页面。
例
“domain-old.com/a”和“domain-old.com/b”可能会被redirect到“domain-new.com/ab”
这是因为/ a + / b的内容是/ ab – 有相关性,redirect是有道理的。
如果它有不相关的内容redirect这将被认为是不好的
“domain-old.com/a”,“domain-old.com/b”和“domain-old.com/c”redirect到“domain-new.com/ab”
在这种情况下,/ c是没有意义的,因为/ ab与页面/ c上的内容没有关系
/ c会留下一个404
请注意,如果您的网页收到404,您将会丢失该stream量。