mod_rewrite没有使用多个规则

时间:2009-12-02 21:30:45

标签: apache url mod-rewrite

我仍然非常迷恋mod_rewrite,因为它对我来说是一个令人难以置信的新事物。我正在尝试为更好的网址设置一些规则。然而,在玩了一段时间后,它似乎只使用列出的第一个规则。例如,如果我去“/ frontpage / some-post-slug”它运行得很好但是如果我去“/ page / some-page-slug”我得到500内部服务器错误。有谁知道会造成什么?

我的.htaccess文件如下所示:

<IfModule mod_rewrite.c>

    Options +FollowSymLinks

    RewriteEngine on

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteRule ^frontpage/([A-Za-z0-9-]+)*$ /frontpage/?slug=$1 [NE,L]
    RewriteRule ^page/([A-Za-z0-9-]+)*$ /page/?slug=$1 [NE,L]

</IfModule>

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

如果你在$ -sign之前移除*会怎样?我从不使用它们,我的规则与你的规则几乎相同。