Wyłącz wyświetlanie katalogu internetowego Apache przy użyciu pliku .htaccess
Zabezpieczenie serwera WWW Apache jest jednym z najważniejszych zadań, szczególnie podczas konfigurowania nowej witryny internetowej.
Na przykład, jeśli utworzysz nowy katalog witryn o nazwie „tecmint” na serwerze Apache (/var/www/tecmint lub /var/www/html/ tecmint) i zapomniałem umieścić w nim plik „index.html”, możesz zdziwić się, gdy dowiesz się, że wszyscy odwiedzający Twoją witrynę mogą w prosty sposób uzyskać pełną listę wszystkich ważnych plików i folderów wpisując http://www.example.com/tecmint w przeglądarce.
W tym artykule pokażemy, jak wyłączyć lub zapobiec wyświetlaniu katalogów serwera WWW Apache za pomocą pliku .htaccess.
W ten sposób lista katalogów będzie pokazywana odwiedzającym, gdy nie będzie w niej pliku index.html..
Na początek .htaccess (lub dostęp do hipertekstu) to plik, który umożliwia właścicielowi witryny kontrolowanie zmiennych środowiskowych serwera, a także innych istotnych opcji zwiększających funkcjonalność jego/ jej strony internetowe.
Aby uzyskać dodatkowe informacje na temat tego ważnego pliku, przeczytaj następujące artykuły dotyczące zabezpieczenia serwera WWW Apache przy użyciu metody .htaccess:
- 25 sztuczek Apache Htaccess pozwalających zabezpieczyć serwer WWW Apache
- Ochrona hasłem katalogów internetowych Apache za pomocą pliku .htaccess
Za pomocą tej prostej metody plik .htaccess jest tworzony w dowolnym i/lub każdym katalogu w drzewie katalogów witryny i udostępnia funkcje najwyższemu katalogowi, podkatalogom i znajdującym się w nich plikom.
Przede wszystkim aktywuj plik .htaccess dla swojej witryny w głównym pliku konfiguracyjnym Apache.
sudo vi /etc/apache2/apache2.conf #On Debian/Ubuntu systems
sudo vi /etc/httpd/conf/httpd.conf #On RHEL/CentOS systems
Następnie poszukaj sekcji poniżej, gdzie wartość dyrektywy AllowOverride
musi być ustawiona na AllowOverride All
.
<Directory /var/www/html/>
Options Indexes FollowSymLinks
AllowOverride All
</Directory>
Jeśli jednak masz już plik .htaccess, wykonaj jego kopię zapasową w następujący sposób; zakładając, że masz go w /var/www/html/tecmint/(i chcesz wyłączyć wyświetlanie tego katalogu):
sudo cp /var/www/html/tecmint/.htaccess /var/www/html/tecmint/.htaccess.orig
Następnie możesz otworzyć (lub utworzyć) go w określonym katalogu w celu modyfikacji za pomocą ulubionego edytora i dodać poniższą linię, aby wyłączyć wyświetlanie katalogów Apache:
Options -Indexes
Następnie zrestartuj serwer WWW 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
Teraz zweryfikuj wynik, wpisując w przeglądarce http://www.example.com/tecmint, powinieneś otrzymać komunikat podobny do poniższego.
To wszystko! W tym artykule opisaliśmy, jak wyłączyć wyświetlanie katalogów na serwerze Apache przy użyciu pliku .htaccess. W nadchodzących artykułach omówimy również dwie inne przydatne i łatwe metody służące temu samemu celowi. Do tego czasu pozostań w kontakcie.
Jak zwykle, skorzystaj z poniższego formularza opinii, aby przesłać nam swoje przemyślenia na temat tego samouczka.