对了,故事是这样的:
多年来,我们已经为我们的一个品牌建立了一个网站,网站设计非常糟糕,最近进行了全面检修,主要是设计,还有一些后端代码。
原来的网站使用这样的链接example.com/products/item/127
,因此我想将它们更改为移动用户友好,特别是包含产品名称,现在相同的链接显示为example.com/product/127/my-jucy-product/
.
自从我们切换以来,我们看到我们的谷歌结果受到了打击(我们在第一页上的正常搜索词,现在我们接近第四了!)。我们遇到的另一个问题是,尽管我编写了从旧到新的 301 重定向,但旧产品的链接尚未更新为新链接。301不是从 中触发的.htaccess
,而是在我们的 PHP 框架中触发的。
我查看了网站是如何从仍在 Google 中的旧链接加载的,这是 firebug 报告的内容:
GET <google link> 302 Found
GET example.com/products/item/127 302 Found
GET example.com/products/item/127 301 Moved Permanently
GET example.com/product/127/my-jucy-product/ 302 Found
所以谷歌链接有302,很好。但是当旧链接进入我们的框架时返回 302!只有在它最终到达框架的正确部分时才会执行 301,所以这是我的问题:
我们的旧链接没有改变并且我们的谷歌排名大幅下降的原因是因为谷歌在 301 之前看到的是 302?
当时我不愿意惹我们.htaccess
,因为它变得非常复杂,而且我处于一些非常紧张的时间限制之下,现在我想知道这是否是一个错误的决定,也许我应该重新审视它。
非常感谢!
编辑
臭虫,刚刚注册了网站管理员工具,我到处都收到重定向错误,数百个!我认为这是我的问题。
编辑2
所以仔细检查看起来好像是因为我很懒惰并且不使用.htaccess
重定向我的URL,我想避免这样做,因为当时只是抛出一个PHP标头更容易,不管我现在已经开始将我们的框架转换为更多地依赖于.htaccess
,这不仅解决了问题(好吧,我们会在我获得 google 爬网时看到),而且还显着提高了速度!