避免使用Apache mod_rewrite重写子目录请求

时间:2009-12-18 07:31:59

标签: security apache mod-rewrite

我想要一个重写规则,如果用户转到网址example.org/stuff/junk.jpg,规则将处理并以re-writer.php结束,但如果用户转到example.org/stuff/hackingisawesome/junk.jpg,则该规则将不被触发,他们将获得标准404(或页面,如果应该存在)。

我无法根据环境变量判断,如果没有一些相当花哨的正则表达式,这是否可行。

所以有人都知道:

a)这已经内置到mod_rewrite语法中,或者

b)用正则表达式处理这个问题的一种好的,可靠的方法吗?

欢迎使用文档或教程的链接。我对下一步该去哪儿感到尴尬。

哦,我可以想象我可以简单地使用规则重定向的脚本来简单地传递404,但我宁愿只在条件存在时使用规则。

1 个答案:

答案 0 :(得分:0)

试试这个:

RewriteRule ^stuff/[^/]+$ re-writer.php

这将重写所有/stuff/…的请求,只有一个额外的路径段到 re-writer.php