Поиск по сайту:

Отключить список веб-каталогов Apache с помощью файла .htaccess


Защита вашего веб-сервера Apache — одна из наиболее важных задач, особенно при настройке нового веб-сайта.

Например, если вы создаете новый каталог веб-сайта под названием «tecmint» на своем сервере Apache (/var/www/tecmint или /var/www/html/ tecmint) и забыли поместить в него файл «index.html», вы можете быть удивлены, узнав, что все посетители вашего веб-сайта могут просто получить полный список всех ваших важных файлов и папок. набрав в браузере http://www.example.com/tecmint.

В этой статье мы покажем вам, как отключить или запретить отображение каталогов вашего веб-сервера Apache с помощью файла .htaccess.

Вот как список каталогов будет отображаться вашим посетителям, если в нем нет index.html.

Начнем с того, что .htaccess (или гипертекстовый доступ) — это файл, который позволяет владельцу веб-сайта контролировать переменные среды сервера, а также другие важные параметры для улучшения функциональности его/ ее сайт(ы).

Для получения дополнительной информации об этом важном файле прочитайте следующие статьи, чтобы защитить веб-сервер Apache с помощью метода .htaccess:

  1. 25 приемов Apache Htaccess для защиты веб-сервера Apache
  2. Защита веб-каталогов Apache паролем с помощью файла .htaccess

Используя этот простой метод, файл .htaccess создается в любом и/или каждом каталоге дерева каталогов веб-сайта и предоставляет функции верхнему каталогу, подкаталогам и файлам внутри них.

Прежде всего активируйте файл .htaccess для своего веб-сайта в главном файле конфигурации Apache.

sudo vi /etc/apache2/apache2.conf    #On Debian/Ubuntu systems
sudo vi /etc/httpd/conf/httpd.conf   #On RHEL/CentOS systems

Затем найдите раздел ниже, где для значения директивы AllowOverride должно быть установлено значение AllowOverride All.

<Directory /var/www/html/>
       Options Indexes FollowSymLinks
       AllowOverride All
</Directory>

Однако если у вас уже есть файл .htaccess, сделайте его резервную копию следующим образом: если он у вас есть в /var/www/html/tecmint/ (и вы хотите отключить листинг этого каталога):

sudo cp /var/www/html/tecmint/.htaccess /var/www/html/tecmint/.htaccess.orig  

Затем вы можете открыть (или создать) его в определенном каталоге для изменения с помощью вашего любимого редактора и добавить строку ниже, чтобы отключить листинг каталогов Apache:

Options -Indexes 

Затем перезапустите веб-сервер Apache:

-------- On SystemD based systems -------- 
sudo systemctl restart apache2
sudo systemctl restart httpd

-------- On SysVInit based systems -------- 
sudo /etc/init.d/apache2 restart 
sudo /etc/init.d/httpd restart

Теперь проверьте результат, набрав в браузере http://www.example.com/tecmint. Вы должны получить сообщение, подобное следующему.

Вот и все! В этой статье мы описали, как отключить список каталогов на веб-сервере Apache с помощью файла .htaccess. В следующих статьях мы также рассмотрим два других полезных и простых метода для той же цели, а до тех пор оставайтесь на связи.

Как обычно, воспользуйтесь формой обратной связи ниже, чтобы отправить нам свои мысли об этом уроке.