我的mod_rewrite有问题。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ $1.php [L,QSA]
RewriteRule ^article/(.+)$ /article.php?article=$1
这是我的.htaccess。使用第一个rewrite_rule,我隐藏了文件扩展名。 它没有问题。根据第二条规则,我想转向" article.php?article = Example"进入"文章/示例"。但每当我尝试通过" article / Example"访问该页面时我收到500内部服务器错误。第一条规则正常,我也可以使用article.php访问该页面?article = Example。
答案 0 :(得分:0)
撤消规则的顺序,并使用MultiViews
禁用内容协商:
Options +FollowSymLinks -MultiViews
RewriteEngine on
RewriteRule ^article/(.+)$ /article.php?article=$1 [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ $1.php [L]