apache DirectoryMatch 匹配文件名

apache DirectoryMatch 匹配文件名

我的 apache 的 security.conf 文件中有以下代码

<DirectoryMatch "/(albums|attachment(s)?|upload(s)?)">
  Options -ExecCGI
  <IfModule php5_module>
    php_flag engine off
  </IfModule>
</DirectoryMatch>

这是为了防止 php 在这些目录内的任何文件上执行。

但是,如果我有此代码,则名为 attachment.php 的文件也不会执行 PHP 代码。我可以修改正则表达式以不包含 attachment.php 文件。但是,问题是为什么上述 DirectoryMatch 会导致我的文件无法执行。

例如路径:

文档根目录:/var/www/html

上传/附件目录:
/var/www/uploads
/var/www/uploads/attachments
/var/www/uploads/albums
/var/www/html/attachments

attachment.php 文件:/var/www/html/attachment.php

相关内容