Onemogućite Apache popis web imenika koristeći .htaccess datoteku


Osiguravanje vašeg apache web servera jedan je od najvažnijih zadataka, posebno kada postavljate novu web stranicu.

Na primjer, ako kreirate novi direktorij web stranice pod nazivom “tecmint” pod vašim Apache serverom (/var/www/tecmint ili /var/www/html/ tecmint) i zaboravili da u njega postavite datoteku “index.html”, mogli biste se iznenaditi kada saznate da svi posjetitelji vaše web stranice mogu jednostavno dobiti potpunu listu svih vaših važnih datoteka i mapa upisivanjem http://www.example.com/tecmint u pretraživač.

U ovom članku ćemo vam pokazati kako da onemogućite ili spriječite popis direktorija vašeg Apache web servera pomoću datoteke .htaccess.

Ovako će se popis direktorija prikazati vašim posjetiteljima kada index.html nije prisutan u njemu.

Za početak, .htaccess (ili hipertekstualni pristup) je datoteka koja omogućava vlasniku web stranice da kontrolira varijable serverskog okruženja, kao i druge vitalne opcije za poboljšanje funkcionalnosti njegovih/ njene web stranice.

Za dodatne informacije o ovoj važnoj datoteci, pročitajte sljedeće članke kako biste osigurali svoj Apache web server pomoću metode .htaccess:

  1. 25 Apache Htaccess trikova za osiguranje Apache web servera
  2. Zaštitite lozinkom Apache web direktorije pomoću .htaccess datoteke

Koristeći ovu jednostavnu metodu, datoteka .htaccess se kreira u bilo kojem i/ili svakom direktoriju u stablu direktorija web stranice i pruža funkcije za gornji direktorij, poddirektorije i datoteke unutar njih.

Prije svega, aktivirajte datoteku .htaccess za svoju web stranicu u glavnoj apache konfiguracijskoj datoteci.

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

Zatim potražite odjeljak ispod, gdje vrijednost AllowOverride direktive mora biti postavljena na AllowOverride All.

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

Međutim, ako imate postojeću datoteku .htaccess, napravite rezervnu kopiju na sljedeći način; pod pretpostavkom da ga imate u /var/www/html/tecmint/( i želite onemogućiti popis ovog direktorija):

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

Zatim ga možete otvoriti (ili kreirati) u određenom direktoriju za modifikaciju koristeći svoj omiljeni uređivač i dodati red ispod da isključite Apache popis direktorija:

Options -Indexes 

Zatim ponovo pokrenite Apache web server:

-------- 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

Sada provjerite rezultat upisivanjem http://www.example.com/tecmint u pretraživač, trebali biste dobiti poruku sličnu sljedećoj.

To je sve! U ovom članku smo opisali kako onemogućiti popis direktorija na Apache web serveru pomoću datoteke .htaccess. Također ćemo pokriti još dvije korisne, ali i jednostavne metode za istu svrhu u narednim člancima, a do tada ostanite povezani.

Kao i obično, koristite obrazac za povratne informacije u nastavku da nam pošaljete svoje mišljenje o ovom vodiču.