【发布时间】:2009-12-02 21:30:45
【问题描述】:
我仍然对 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>
感谢您的帮助!
【问题讨论】:
-
您可以使用
RewriteLog /path/to/your/rewrite.log和RewriteLogLevel LEVEL打开重写日志,其中LEVEL 为0-9,以查看Apache 正在做什么。
标签: apache url mod-rewrite