.htaccess 谷歌如何应对重定向到重定向

.htaccess 谷歌如何应对重定向到重定向,.htaccess,seo,http-status-code-301,google-index,.htaccess,Seo,Http Status Code 301,Google Index,我正在将网站迁移到drupal CMS 我想知道谷歌对重定向的反应。 我将试着解释我试图实现的目标: 旧情况:www.old-site.com/page?pid=123 新形势:www.new-site.com/page/pagetitle 我想在我的.htaccess文件中创建一个301重定向,就像我对许多其他页面所做的那样。 但在这种特殊情况下,新网站中不知道旧页面id pid 我的计划是创建以下重写规则: RewriteCond %{QUERY_STRING} ^pid=(.*)$ Rew

我正在将网站迁移到drupal CMS

我想知道谷歌对重定向的反应。 我将试着解释我试图实现的目标:

旧情况:www.old-site.com/page?pid=123

新形势:www.new-site.com/page/pagetitle

我想在我的.htaccess文件中创建一个301重定向,就像我对许多其他页面所做的那样。 但在这种特殊情况下,新网站中不知道旧页面id pid

我的计划是创建以下重写规则:

RewriteCond %{QUERY_STRING} ^pid=(.*)$
RewriteRule ^page.aspx$ page-redirect/%1? [R=301,L,NC]
现在我有了正确的页面id。然后我想做的是创建一个小脚本,将url从page redirect/123重写为page redirect/newtitle,因为我知道id附带的标题

然后我想让以下规则处理新标题:

RewriteRule ^page-redirect/(.*)$ page/%1? [R=301,L,NC]
所以最基本的问题是:这对谷歌指数有何影响?我们的客户希望在google中保持良好的有机结果。

与其从page.aspx重定向到page redirect,不如重写到page redirect。这样,页面重定向可以计算出最终的url页面重定向/newtitle,并为其发出一个301重定向,即

RewriteCond %{QUERY_STRING} ^pid=(.*)$
#just do a server side rewrite instead of a redirect
RewriteRule ^page.aspx$ page-redirect/%1? [L,NC]
重定向逻辑将存在于页面重定向代码中

如果你仍然选择进行2301重定向,这并不理想,但是谷歌应该将旧URL的页面排名转移到新URL


请注意,无论哪种方式,当您通过301 1或301 2移动内容时,您的页面排名都会暂时下降,因为您的旧页面会从索引中删除,而新页面会被添加。

这实际上是个好主意。为什么我之前没想到:谢谢你