当文件名与目录名匹配时,RewriteRule会导致内部错误

时间:2015-09-02 14:04:38

标签: .htaccess mod-rewrite url-rewriting internal-server-error

我已将其设为/user/username成功将用户定向到/userui.php?username=username。但是,如果我将 userui.php 的名称更改为 user.php ,则会出现内部错误,因为虚假目录的名称与实际文件的名称相匹配。< / p>

可以进行哪些更改,以便我可以成功命名我的文件user.php并仍然提供给/ user /目录?

工作正常:

RewriteRule ^user/([^/]+)$ userui.php?username=$1 [L,QSA]

内部服务器错误:

RewriteRule ^user/([^/]+)$ user.php?username=$1 [L,QSA]

1 个答案:

答案 0 :(得分:1)

请尝试通过以下行关闭MultiViews

Options -MultiViews

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