为什么在Last RewriteRule之后的redirectPermanent有效?

时间:2016-01-21 08:53:25

标签: wordpress apache .htaccess mod-rewrite

使用此.htaccess文件:

# BEGIN WordPress
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
</IfModule>
# END WordPress

RedirectPermanent /test/ /test2/

此网址http://www.example.com/test/应首先通过Wordpress调度程序的RewriteRule,并因. /index.php [L]而停在[L]

那么为什么RedirectPermanent条件在那之后起作用?当我输入上一个网址时,我被重定向到http://www.example.com/test2/

Apache如何处理这种重定向?

1 个答案:

答案 0 :(得分:1)

基于@ hjpotter92评论。

[L]标记仅影响mod_rewrite设置的规则。

RedirectPermanent取决于mod_alias,因此不会受[L]规则上的mod_rewrite标记的影响。