1

我正在尝试设置从子域到主域的 301 重定向,但是当旧 url 具有查询字符串时,我遇到了问题。

新站点将 PHP 作为一个 FastCGI 进程运行。我尝试使用此处列出的解决方案:https ://expressionengine.stackexchange.com/questions/5188/301-redirects-appending-query-string ://expressionengine.stackexchange.com/questions/5188/301-redirects-appending-query-string 它适用于大多数网址,但不适用于旧网址有查询字符串。

例如,

RewriteRule ^old-blog/title/?$ http://www.example.com/new-blog/title/ [L,R=301]

可以将 old.example.com/old-blog/title 重定向到 www.example.com/new-blog/title 但我在处理包含查询字符串的页面时遇到了问题。我尝试使用这个:

RewriteRule ^Default\.aspx?/?$ http://www.example.com/new-blog/ [L,R=301]

但是像 old.example.com/default.aspx?title 这样的网址会重定向到 www.example.com/new-blog/?title 而不仅仅是 www.example.com/new-blog/

我可以停止将查询字符串附加到新网址吗?

还有一种方法可以对尚未使用上述第一种方法重定向到 www.example.com/new-blog/ 的每个链接进行全面重定向吗?

不确定是否重要,但新站点正在运行 ExpressionEngine 并使用 htaccess 从 url 中删除 index.php,但上面的 htaccess 规则在旧子域上。

4

0 回答 0