题
我希望我可以解释这种显然不够,但如果不让我知道,我会尽力澄清。
我目前正在开发一个网站使用ColdFusion和有mod_rewrite规则的地方,以使它看起来像该网站使用PHP.任何要求index.php 得到处理的索引。cfm(规则的地图*.php*。cfm)。
这一工作的很好-到目前为止,一切都很好.问题是我想要返回404地位代码,如果指数。cfm(或任何ColdFusion页)被请求。
如果我试图阻止访问*.cfm文件使用mod_rewrite它也返回404请求*.php.
我想我可能需要改变我的Apache配置,而不是使用。要
解决方案
你可以使用 S
标志跳过 404
规则是这样的:
RewriteEngine on
# Do not separate these two rules so long as the first has S=1
RewriteRule (.*)\.php$ $1.cfm [S=1]
RewriteRule \.cfm$ - [R=404]
如果你也是的使用 Alias
选项,然后你也应该加入 PT
标志。看看 mod_rewrite文件 对于细节。
其他提示
员额的规则已经作为一个起点,以便人们不必重建它,以帮助你。
我建议测试[L]的规则的地图。php。cfm文件作为第一件事要尝试。
你必须使用两个不同的群体的重写规则之一。php,另。信息交换所机制,并使它们相互独家与重写过%{REQUEST_FILENAME}.和使用的标志[L]的建议jj33.
你可以保持你的规则。不喜欢这里.
不隶属于 StackOverflow