Mod_Rewrite:RewriteRule失败

时间:2014-07-02 17:56:54

标签: apache .htaccess mod-rewrite

我试图重定向两个请求,但只有一个请求有效:

RewriteEngine On
RewriteRule ^cat/([^/\.]+)?$ cat.php?id=$1 [L]
RewriteRule ^user/([^/\.]+)?$ user.php?id=$1 [L]

domain.com/cat/something - >作品

domain.com/user/12345 - >不工作($ _GET是空的)

这很奇怪,因为第一条(相同的)规则完美无缺。

也许只是因为第二条规则无法处理数字或其他内容?

谢谢!

1 个答案:

答案 0 :(得分:0)

您很可能已启用选项MultiViews。将此行置于.htaccess

之上即可将其停用
Options -MultiViews
  • MultiViews使用选项Apache's content negotiation module,它在mod_rewrite之前运行,并使Apache服务器匹配文件扩展名。因此/file可以在网址中,但它会投放/file.php