Apache重写规则类似于Nginx try_files

时间:2012-06-19 15:44:52

标签: apache

在Nginx中我玩了try_files,它基本上接受了域上文件的任何请求,并通过名为file_parse.php的自定义php脚本传递它。在Nginx中,它看起来像这样:try_files $ url /file_parse.php

如果文件确实存在于文档根目录中,则它不使用try_files。 Nginx中的此规则不会重定向用户,例如,如果用户键入http://www.domain.com/123456.html该地址显示在他们的浏览器中,但file_parse.php需要123456.html和echo的html代码基于该数字(123456)。如果file_parse.php没有要回显的内容,则file_parse.php为客户端设置404标头。

Apache中是否存在类似的内容?

2 个答案:

答案 0 :(得分:3)

找到答案,似乎工作,error.log中没有错误:

<Directory /this/is/the/directory/>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . file_parse.php [L]
</Directory>

答案 1 :(得分:0)

  

Apache中是否存在类似的内容?

查看mod_rewrite的RewriteMap指令,特别是prg地图类型,它允许您运行脚本并传递请求信息。

相关问题