ForceType/SetHandler 代码-为什么它有效?

ForceType/SetHandler 代码-为什么它有效?

我试了一下这段代码,虽然不知为何可以运行,但是其中是否存在错误?

我不确定纠正这个问题的最佳方法是什么,但是这里有...

<Files .+*^$[]()>
ForceType application/x-httpd-php
SetHandler application/x-httpd-php
</Files>

不确定为什么它会起作用;这是正则表达式错误吗?这是否意味着我可以拥有一个包含 PHP 代码和图像等的无扩展名文件,并且它会运行良好,或者是否有其他代码可以做到这一点?

(请记住这是从 PHP 脚本论坛复制并上传的...)

答案1

不,这看起来不像是遵循 PCRE。Apache 解析是它的一个子集。如果你想确切地知道它为什么有效,你需要下载 apache 源代码并开始阅读 srclib/pcre/pcre.c。

如果您只是想为任何没有扩展名的文件设置 PHP 处理程序,那么合理的方法可能如下:

<FilesMatch ^\b\w*\b$>
    SetHandler application/x-httpd-php
</FilesMatch>

不过,你所说的“有效”是什么意思还不清楚。你可能是指它不会产生错误,或者它有某种其他有用的意外行为。

相关内容