Answers:
创建一个.htaccess文件,其中包含以下行:
Options -Indexes
那是一种选择。另一个选择是编辑apache配置文件。
为此,您首先需要使用以下命令将其打开:
vim /etc/httpd/conf/httpd.conf
然后找到以下行:Options Indexes FollowSymLinks
将该行更改为:选项FollowSymLinks
最后保存并退出文件,然后使用以下命令重新启动Apache服务器:
sudo service httpd restart
(您可以在此处获得带有屏幕截图的指南。)
.htaccess
可能已关闭。请检查AllowOverride
指令。如果将其设置为None
,则将.htaccess
其关闭。您可以通过设置将其打开AllowOverride All
。更准确地说,All
是指所有Apache指令。
最好的方法是使用webserver apache2禁用它。在我的Ubuntu 14.X中- /etc/apache2/apache2.conf
从以下位置打开更改
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
至
<Directory /var/www/>
Options FollowSymLinks
AllowOverride None
Require all granted
</Directory>
然后通过以下方式重新启动apache:
sudo service apache2 reload
这将从apache2服务的所有文件夹中禁用目录列表。
-Indexes
FollowSymLinks
apachectl configtest
添加Options -Indexes FollowSymLinks
到httpd.conf 后运行,将显示以下错误:“所有选项都必须以+或-开头,否则可能没有选项。” 因此,什么会的工作Options -Indexes +FollowSymLinks
除了上述两种方法(编辑/etc/apache2/apache2.conf或在.htaccess文件中添加Options -Indexes)之外,这是另一种方法
a2dismod autoindex
之后重新启动apache2服务器
sudo service apache2 restart
a2dismod -f autoindex
用于非阻塞命令执行。
Alias
文件夹以及Apache服务的任何其他路径。
.htaccess
文件中可用(这不是最有效的方式,但它通常是共享主机帐户或繁忙的系统管理员中的唯一选择)。
您可以将一个名为的空文件index.html
放入您不想列出的每个目录中。这有几个优点:
.htaccess
文件,则可能会为您的用户导致许多“错误500-内部服务器错误”消息!)从理论上讲,自动索引可能由其他文件触发(由DirectoryIndex
选项控制),但是我在现实世界中还没有遇到过。
index.html
最初定义的DirectoryIndex指令一起使用。
重要的事情之一是设置安全的apache Web服务器是禁用目录浏览。默认情况下,apache启用了此功能,但是除非您确实需要它,否则禁用它始终是一个好主意。在apache文件夹中打开httpd.conf文件,并找到如下所示的行:
Options Includes Indexes FollowSymLinks MultiViews
然后删除单词索引并保存文件。重新启动Apache。而已