繁体   English   中英

Apache目录清单

[英]Apache directory listing

使用服务器IP地址时,我无法阻止apache创建目录列表。 我已尝试按以下方式编辑相关的站点可用文件;

<VirtualHost *:80>
    JkMount /* default
    ServerName example.co.uk
    ServerAlias www.example.co.uk
    ServerAdmin me@example.co.uk
    DocumentRoot /var/www/example.co.uk/public_html
    ErrorLog /var/www/example.co.uk/logs/error.log
    CustomLog /var/www/example.co.uk/logs/access.log combined
    <Directory /var/www/example.co.uk/public_html>
        Options -Indexes
    </Directory>
</VirtualHost>

...但是如果我使用这种格式的网址访问服务器,则会列出public_html文件夹的内容;

http://192.168.1.99/example.co.uk/public_html

我还试图修改/etc/apache2/apache.conf中的apache配置文件,使其包括以下内容:

<Directory />
    Options -Indexes
</Directory>

..但没有喜悦。

我正在使用Tomcat,并且需要我的WEB-INF文件夹才能拒绝访问。 事实并非如此,因此可以下载任何.class文件。

有谁知道我该如何解决?

谢谢

这听起来有点奇怪。 在Apache Tomcat服务器前面是否有Apache HTTPD?

在这种情况下,Apache HTTPD不得指向Apache Tomcat文件所在的目录! 两者之间的通信可以看作是代理而不是插件。

我们有一些使用mod_proxy_ajp的良好经验。 但是,如果您能够下载.class文件并打开web.xml(关闭应急模式)(关闭应急模式),则完全错误。

如果在末尾添加/ *怎么办?

<Directory /var/www/example.co.uk/public_html/*>
        Options -Indexes
</Directory>

更新:或尝试将条目添加到VirtualHost指令之外。

这意味着它将不会达到您的VirtualHost设置,但会达到默认的虚拟主机设置。

您有2个选项(至少):

1,将.htaccess文件放到您要限制列表的目录中

2,使用与基于名称的虚拟主机类似的设置来设置基于IP的虚拟主机

你说你放

<Directory />
    Options -Indexes
</Directory>

您应该在那里找到位置而不是目录

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM