我有以下重写规则
RewriteRule ^healthcheck/?$ /README.txt [NC,L,R=307]
在我的.htaccess中。有什么奇怪的是,当我将字符串healthcheck
更改为任何其他字符串时,重写规则有效。我错过了什么?
答案 0 :(得分:1)
如果您有一个名为healthcheck.php
的文件,导致此规则无法应用:
RewriteRule ^healthcheck/?$ /README.txt [NC,L,R=307]
听起来你需要关闭多视图,这是mod_negotiation的一部分,并取代你拥有的任何mod_rewrite规则。 Mod_negotiation将看到请求/healthcheck
,然后看到有一个名为/healthcheck.php
的文件,并假设该请求实际上是针对php文件的。关闭它将最终让mod_rewrite处理它:
Options -Multiviews