我在linux环境下运行apache。我必须提供目录结构为“/”的文件。在里面。现在,apache 默认情况下不允许带有 / 的文件。为了消除限制,我在 httpd conf 中包含了以下条目。
<DirectoryMatch "^.|/.">
Order allow,deny
Allow from all
</DirectoryMatch>
但是,这会打开 apache 根目录下的所有隐藏目录。我正在尝试使用目录模式,以便它只允许该目录下的文件。例如,目录路径始终以/content/ 开头。 /的出现。可以在任何地方。例如,
/content/url/test/.NET/sample/abc.html
/content/xyz/.BETA/sample/test.html
如您所见,我正在尝试创建一种模式,其中规则允许目录以“/content”开头并且可以具有“/”。在它的路径中。只是想知道是否可以在选项中有这样的规则。
答案1
我从来没有尝试过,但你需要使用
DocumentRoot
在 apaches 虚拟主机配置(在启用站点或 httpd.conf 中)文件中,您需要遵循以下条目:
/content/url/test/.NET/sample/abc.html
/content/xyz/.BETA/sample/test.html
<virtualhost:*80>
ServerAdmin whatever@whatever
DocumentRoot {your-desired-directory {/root/file-path"/content"}
</virtualhost>
如果您需要添加/只需创建另一个条目
<virtualhost:*80>
ServerAdmin whatever@whatever
DocumentRoot {your-desired-directory {/root/file-path"/"}
</virtualhost>