我试着这样使用友好的url:
RewriteRule ^index/([1-9]{1,5})$ /index.php?id=$1 [L]
RewriteRule ^contact/([1-9]{1,5})$ /contact.php?id=$1 [L]但这不起作用,我想这是因为我在RegEx中使用了文件的名称。
这可以很好地工作:
RewriteRule ^home/([1-9]{1,5})$ /index.php?id=$1 [L]
RewriteRule ^emailus/([1-9]{1,5})$ /contact.php?id=$1 [L]我不知道不可能在friedly urls中使用文件的名称,请,有人知道修改这个配置的方法吗?在其他情况下,我必须更改所有文件的名称。
发布于 2013-10-10 04:07:44
这听起来像是Multiviews和mod_negotiation在不需要的时候抬起了丑陋的头。
可能发生的情况是,您让mod_negotiation看到请求是/contact/123,并注意到有一个/contact.php文件,然后立即提供该文件并完全绕过mod_rewrite。您需要将其关闭:
Options -Multiviewshttps://stackoverflow.com/questions/17347266
复制相似问题