我有一堆不存在的url,需要redirect到新的,虽然他们不工作… mod_rewrite没有工作,并启用,我想知道如果redirect的URL必须实际存在才能redirect工作。
这是我有什么:
Redirect 301 /cgi-bin/commerce.cgi?display=action&emptyoverride=yes&template=Assets/XHTML/Advantage.html http://domain.com/the-bag-to-nature-advantage.html
更新这是在[索引在谷歌!] http://domain.com//cgi-bin/commerce.cgi?display=action&emptyoverride=yes&template=Assets/XHTML/Advantage.html
这是它需要去的地方: http : //domain.com/the-bag-to-nature-advantage.html
要使用mod_rewrite:
RewriteEngine On RewriteCond %{QUERY_STRING} ^display=action&emptyoverride=yes&template=Assets/XHTML/Advantage\.html$ [NC] RewriteRule ^/cgi-bin/commerce\.cgi$ http://domain.com/the-bag-to-nature-advantage.html [R=301]
请注意,这是为了如果它在您的VirtualHost
上下文; 如果将其放在Directory
或htaccess
上下文中,则将RewriteRule
上的前导斜杠RewriteRule
。