Apache控制是否显示站点目录

加载 mod_autoindex 模块

Apache 2.4版本,如果要控制站点目录是否显示,需要 mod_autoindex 模块。如果没有该模块,显示站点目录的指令无效。

加载该模块

LoadModule autoindex_module modules/mod_autoindex.so 方法一

解决过程:首先查看apache官网文档,不能快速找到需要的部分。用搜索引擎查找“apache显示站点目录”,找到相关资料,雷同。按照资料说明配置无效。
开始尝试在虚拟主机和非虚拟主机尝试资料中的配置,仍然无效。再回到官网文档查找关键词“Options Indexes”,看到“mod_autoindex can generate a listing of the directory contents”,
然后全文检索httpd.conf,意识到是因为相关模块没有加载。

虚拟主机显示站点目录

apache 2.4版本默认不显示站点目录,虚拟主机配置如下:

<VirtualHost *:80> ServerAdmin chuganghong@qq.com DocumentRoot "E:\wamp64\www\my-site\test-php" ServerName test-php.com ErrorLog "logs/test-php.com-error.log" CustomLog "logs/test-php.com-access.log" common </VirtualHost>

加入显示站点目录的指令 Options +Indexes,完整代码如下:

<VirtualHost *:80> <Directory "E:\wamp64\www\my-site\test-php"> Options +Indexes # 显示站点目录 </Directory> ServerAdmin chuganghong@qq.com DocumentRoot "E:\wamp64\www\my-site\test-php" ServerName test-php.com ErrorLog "logs/test-php.com-error.log" CustomLog "logs/test-php.com-access.log" common </VirtualHost>

Options +Indexes 或 Options Indexes 或没有这条指令,显示站点目录。
Options -Indexes,禁止显示站点目录。

参考资料

mod_autoindex can generate a listing of the directory contents

Ubuntu Server 14.04 安装Web服务器(Linux+Apache+MySQL+PHP) 

Linux下安装配置PHP环境(Apache2) 

Linux下 Apache服务器配置 

Ubuntu 13.04 安装 LAMP\Vsftpd\Webmin\phpMyAdmin 服务及设置

CentOS 5.9下编译安装LAMP(Apache 2.2.44+MySQL 5.6.10+PHP 5.4.12)

Linux下Apache服务器配置

Linux下Apache虚拟主机的配置 

Ubuntu下Apache的安装与配置

Apache 的详细介绍请点这里
Apache 的下载地址请点这里

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/c06095c61869720aad48323f77af3056.html