温馨提示×

ubuntu apache怎么禁止目录浏览

小樊
47
2026-09-20 12:54:14
栏目: 智能运维

在 Ubuntu 的 Apache 中,**禁止目录浏览(目录列表)**通常是通过关闭 Indexes 选项来实现的。下面给你几种常用方法。


方法一:修改 Apache 虚拟主机配置(推荐)

  1. 打开站点配置文件
sudo nano /etc/apache2/sites-available/000-default.conf

(如果你用的是其他站点,请对应修改)

  1. 在 <Directory> 配置中去掉 Indexes
    示例:
<Directory /var/www/html>
    Options -Indexes +FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

重点是:

Options -Indexes
  1. 保存后重启 Apache
sudo systemctl restart apache2

方法二:使用 .htaccess(适合不能改主配置的情况)

  1. 确保 Apache 允许 .htaccess 生效
AllowOverride All
  1. 在网站根目录创建或编辑 .htaccess
sudo nano /var/www/html/.htaccess
  1. 添加以下内容:
Options -Indexes
  1. 重启 Apache(部分情况不需要)
sudo systemctl restart apache2

方法三:全局关闭(不推荐,影响所有站点)

编辑 Apache 主配置:

sudo nano /etc/apache2/apache2.conf

找到:

<Directory /var/www/>
    Options Indexes FollowSymLinks

改为:

Options -Indexes +FollowSymLinks

然后重启:

sudo systemctl restart apache2

验证是否生效

访问一个没有默认首页(如 index.html、index.php)的目录:

  • 之前:显示文件列表
  • 之后:显示 403 Forbidden

补充说明

  • Indexes:开启目录浏览
  • -Indexes:禁止目录浏览
  • 建议同时配置默认首页:
DirectoryIndex index.php index.html

如果你用的是 Ubuntu + PHP + Laravel / WordPress,我也可以给你更针对性的配置。

0 踩