RewriteRule覆盖重定向301

时间:2019-02-25 11:02:25

标签: .htaccess redirect url-rewriting

我想在.htaccess中放入两个规则。 第一要务,手动重定向。 然后,将所有其他URL重定向到另一个域。

当我仅使用“重定向”或仅使用“ rewriterule”时,.htaccess可以工作,但是当我同时使用“ .redirect”和“ rewriterule”时,rewriteRule会覆盖“ redirect”,因此我无法选择手动重定向某些URL。 但是,重定向行在代码中较高,因此我认为应该将其作为优先级。

我的.htaccess:

Redirect 301 /directory/redirectiontest/pagebase1.php http://v2.mywebsite.com/nous-contacter.html
Redirect 301 /directory/redirectiontest/pagebase2.php http://v2.mywebsite.com/nous-contacter.html

RewriteEngine on
RewriteRule ^(.*)$ https://v2.mywebsite.com/$1 [R=301,L]

感谢帮助:-)。

1 个答案:

答案 0 :(得分:1)

您的RewriteRule将覆盖Redirects,因为您已经将RedirectRewriteRule混合在一起。这些指令是两个不同的Apache模块的一部分,并且具有不同的运行时行为。使用RewriteRule进行手动URL重定向。

 RewriteEngine on
 RewriteRule ^/?directory/redirectiontest/pagebase1.php http://v2.mywebsite.com/nous-contacter.html [L,R]
 RewriteRule ^/?directory/redirectiontest/pagebase2.php http://v2.mywebsite.com/nous-contacter.html [L,R]


RewriteRule ^(.*)$ https://v2.mywebsite.com/$1 [R=301,L]