是否可以列出目录并根据排除器隐藏特定文件,即 HTTP_Host?

Is it possible to have a directory listed and hide specific files based on an excluder, i.e HTTP_Host?

是否可以列出目录并根据排除器隐藏特定文件,即 HTTP_Host?

Request for cloud -> from example.com -> Hide all files beginning with xamplee_
Request for cloud -> from xamplee.com -> Hide all files beginning with example_

我尝试了以下但没有成功:

IndexIgnore xxx

Options -MultiViews
RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]
RewriteRule ^xamplee_ xxx [NC,L]

#RewriteCond %{HTTP_HOST} ^www\.xamplee\.com$ [NC]
IndexIgnore êxample_ xxx [NC,L]

我什至不确定这是否可能。也欢迎采用不同的方法。

好的,基于对此处问题的评论中的交流,一些方法可以帮助您入门(希望如此):

apache http 服务器带有一组模块。其中之一是 mod_dir,它提供了生成目录列表的功能。

它提供了标准列表,但也允许更灵活的使用。 "DirectoryIndex" 指令允许将任何对象声明为目录的可用索引文档。有了它,您可以配置生成此类问题的任何类型的处理程序。典型示例是静态 html 文档或动态 index.php 文档,因此 php 脚本生成手头目录的基于 html 的索引。当然也可以选择任何其他脚本语言。 它的文档有助于详细信息:http://httpd.apache.org/docs/2.2/mod/mod_dir.html

此处的方法是选择一种在您的环境中可用(或使其可用)的合适的脚本语言,并将 DirectoryIndex 指令指向以该语言编码的脚本。

另一种方法是创建重写规则以将所有对目录的请求中继到脚本。只要脚本知道它应该为哪个目录创建索引,结果或多或少是一样的。

这样,每当对目录的请求进入该脚本时,该脚本就会得到很好的执行,并有望为该目录提供正确的 html 索引文档。在这样的脚本中,您可以自由地执行和输出您喜欢的任何内容。