我正在尝试将(301)所有页面从不再工作的电子商店重定向到新域的主页。
有人可以告诉我为什么这不能正常工作:
RewriteEngine on
RewriteRule ^(.*)$ http://smartshop.bg/ [L,R=301]
问题是http://shop.topdigital.bg/index.php?p=13
会去smartshop.bg/?p=13
换句话说,它是复制问号后的所有内容。
2个小时的研究没有解决这个问题,所以请帮助:(
由于您没有添加自己的任何查询字符串参数,因此仅保留原始查询字符串 - 这就是它的工作方式。
http://httpd.apache.org/docs/2.0/en/mod/mod_rewrite.html#rewriterule:
"如果要擦除现有查询字符串,请仅用问号结束替换字符串。"
应该适合您在DOCUMENT_ROOT/.htaccess
文件中:
RewriteEngine on
RewriteRule ^ http://smartshop.bg/? [L,R=301]