无法在 httpd.conf 中禁用目录列表
Posted
技术标签:
【中文标题】无法在 httpd.conf 中禁用目录列表【英文标题】:Cannot disable Directory Listing in httpd.conf 【发布时间】:2013-09-02 06:49:10 【问题描述】:我刚刚在我的个人 CentOS 机器上安装了 XAMPP,当我尝试禁用 Directory Listing
时,我在重新启动时收到 Apache 错误。进行更改后,我的 httpd.conf
文件如下所示:
httpd.conf
Alias /bitnami/ "/opt/lampp/apache2/htdocs/"
Alias /bitnami "/opt/lampp/apache2/htdocs"
<Directory "/opt/lampp/apache2/htdocs">
Options -Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
错误
XAMPP: Starting Apache...fail.
AH00526: Syntax error on line 5 of /opt/lampp/apache2/conf/httpd.conf:
Either all Options must start with + or -, or no Option may.
我已尝试一起删除索引,但我仍然可以看到我的目录。也许我在错误的文件中,但是从我读过的内容来看,必须在此处创建禁用目录列表或 .htacces (我试图避免。)以防万一,我确保每次都重新启动 XAMPP我进行了更改。
【问题讨论】:
【参考方案1】:错误信息很清楚。改写/显示示例:
# relative to whatever lower precedence section applies
Options -Indexes
如果您的目标是关闭索引。如果您想确保也设置了 FollowSymlinks,请在其前面加上一个 +:
# relative to whatever lower precedence section applies
Options -Indexes +FollowSymlinks
如果您想关闭除了 FollowSymlinks 之外的所有内容:
# not relative
Options FollowSymlinks
【讨论】:
在 apache/conf/httpd.conf 中将 'Options Indexes FollowSymLinks Includes ExecCGI' 替换为 'Options FollowSymLinks Includes ExecCGI' 保存并重新启动 apache。【参考方案2】:请转到文件:/opt/lampp/etc/httpd.conf 并像这样评论该行:
#Options Indexes FollowSymLinks Includes ExecCGI
或像这样编辑
Options -Index
对于 Windows 机器:在文件 /apache/conf/httpd.conf 中进行相同的编辑
【讨论】:
在 Ubuntu XAMPP /opt/lampp/etc/httpd.conf 中,此解决方案有效。 #Options Indexes FollowSymLinks 包括 ExecCGI to #Options FollowSymLinks 包括 ExecCGI @VigneshWaran:很高兴它帮助了你!【参考方案3】:我在“FollowSymlinks”这个词前面加了一个“+”来获得成功。 并替换此行:
AllowOverride All
Order allow,deny
收件人:
Require all granted
希望能帮到你!
【讨论】:
【参考方案4】:你也可以使用:
sudo a2dismod autoindex
【讨论】:
以上是关于无法在 httpd.conf 中禁用目录列表的主要内容,如果未能解决你的问题,请参考以下文章
AWS Elastic Beanstalk httpd/conf.d/ssl.conf 无法识别