0

我重新设计了这个网站,并尝试创建一个 301 重定向来将旧链接重定向到新链接,以保存现有的 google pagerank。我正在为我的网站使用 joomla。

我试过的链接示例:

  • 旧链接:frutaplantaonline.nl/cgi-bin/index.pl?n=823&txt=privacy_policy
  • 新链接:frutaplantaonline.nl/privacy-policy

我试过:

Redirect 301 /cgi-bin/index.pl?n=823&txt=privacy_policy http://frutaplantaonline.nl/privacy-policy
RewriteRule ^/?cgi-bin/index.pl?n=823&txt=privacy_policy/?$ http://frutaplantaonline.nl/privacy-policy [L,R=301]

所有链接都包含cgi-bin/index.pl在其中,如果我删除中的点,index.pl我可以重定向站点。

一直在寻找几个小时,但没有找到解决方案,如果有人可以帮助我,我将不胜感激!

4

1 回答 1

0

Redirect在您的情况下,指令是无用的,因为它仅适用于路径(即/cgi-bin/index.pl)。

您需要使用RewriteRule指令并伴随它RewriteCond来匹配查询字符串。从官方文档

如果您希望匹配主机名、端口或查询字符串,请分别使用带有 %{HTTP_HOST}、%{SERVER_PORT} 或 %{QUERY_STRING} 变量的 RewriteCond。

所以在你的情况下,这样的事情可能会做:

RewriteCond %{QUERY_STRING} n=823&txt=privacy_policy
RewriteRule ^/cgi-bin/index.pl$ http://frutaplantaonline.nl/privacy-policy [R=301,L]
于 2013-06-01T13:28:23.103 回答