是否可以列出目录并隐藏基于排除程序的特定文件,即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]
我甚至不确定它是否可行。也欢迎采用不同的方法。
答案 0 :(得分:0)
好的,根据问题评论中的交流,这里有一些方法可以让你开始(希望如此):
apache http服务器附带了一组模块。其中一个是mod_dir
,它提供了生成目录列表的功能。
它提供标准列表,但也允许更灵活的使用。 “DirectoryIndex”指令允许将任何对象声明为目录的可用索引文档。有了这个,您可以配置生成此类问题的任何类型的处理程序。典型的例子是静态html文档或动态index.php
文档,因此php脚本生成基于html的目录索引。当然,也可以选择任何其他脚本语言。
其文档有助于详细说明:http://httpd.apache.org/docs/2.2/mod/mod_dir.html
这里的方法是选择一种适合您环境中可用的脚本语言(或使其可用),并将DirectoryIndex指令指向以该语言编码的脚本。
另一种方法是创建重写规则,将所有目录请求中继到脚本。只要脚本知道它应该为哪个目录创建索引,那么或多或少相同。
这样,每当对该目录的请求进入该脚本时,该脚本就会被执行并且期望为该目录提供正确的html索引文档。在这样的脚本里面,你可以自由地输出任何你喜欢的东西。