【发布时间】:2011-01-14 08:35:04
【问题描述】:
我有一个包含许多 RewriteRules 的 .htaccess 文件。
我如何才能排除已经存在的文件和目录,使其不通过每个 RewriteCond / RewriteRule 对?
这个:
RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule .* - [F,L]
不会可靠地工作,因为根据this SO question:
在 .htaccess 上下文中,[L] 不会强制 mod_rewrite 停止。它将继续触发内部子请求:
我怎样才能做到这一点? 或者,在 mod_rewrite 中是否有类似 if 条件适用,通过此规则块,否则跳过并转到 end 的控制结构?
【问题讨论】:
-
应该在ServerFault上发布
-
是的,我在上一个 mod_rewrite 问题时已经讨论过了。好吧,如果有五个人有这种感觉,那么如果你必须迁移它,但只要我们在这里回答 各种关于 SO 的 HTML 问题 太多,更少 与编程有关的任何 mod_rewrite 问题,我将继续在这里发布 mod_rewrite 问题。 (这里不会以任何方式攻击你@Steen。这只是需要在正确的场合下出来,恰好是这个问题。)
-
干杯。很高兴给这个机会 :) 重要的是你的问题得到了回答,你似乎做到了。
标签: apache mod-rewrite