Onemogočite seznam spletnih imenikov Apache z uporabo datoteke .htaccess


Zaščita spletnega strežnika apache je ena najpomembnejših nalog, še posebej pri nastavitvi novega spletnega mesta.

Če na primer ustvarite nov imenik spletnega mesta z imenom »tecmint« pod strežnikom Apache (/ var/www/tecmint ali/var/www/html/tecmint) in ste vanj pozabili vstaviti datoteko »index.html«, morda presenečen, ko ve, da lahko vsi obiskovalci vašega spletnega mesta dobijo popoln seznam vseh vaših pomembnih datotek in map, tako da v brskalnik vtipkajo http://www.example.com/tecmint.

V tem članku vam bomo pokazali, kako onemogočite ali preprečite seznam imenikov spletnega strežnika Apache z datoteko .htaccess.

Tako bo seznam imenikov prikazan vašim obiskovalcem, če index.html v njem ni.

Za začetek je .htaccess (ali dostop do hiperteksta) datoteka, ki lastniku spletnega mesta omogoča nadzor nad spremenljivkami okolja strežnika in drugimi pomembnimi možnostmi za izboljšanje funkcionalnosti njegovih spletnih mest.

Za dodatne informacije o tej pomembni datoteki preberite naslednje članke, s katerimi zaščitite svoj spletni strežnik Apache z metodo .htaccess:

  1. 25 trikov Apache Htaccess za zaščito spletnega strežnika Apache
  2. Zaščitite spletne imenike Apache z geslom z uporabo datoteke .htaccess

S to preprosto metodo se datoteka .htaccess ustvari v katerem koli in/ali vsakem imeniku v drevesu imenikov spletnih mest in nudi funkcije zgornjemu imeniku, podimenikom in datotekam v njih.

Najprej aktivirajte datoteko .htaccess za svoje spletno mesto v glavni konfiguracijski datoteki apache.

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

Nato poiščite spodnji razdelek, kjer mora biti vrednost direktive AllowOverride nastavljena na AllowOverride All .

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

Če pa imate obstoječo datoteko .htaccess, jo naredite na naslednji način; ob predpostavki, da ga imate v/var/www/html/tecmint/(in želite onemogočiti seznam tega imenika):

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

Nato ga lahko odprete (ali ustvarite) v določenem imeniku za spreminjanje z vašim najljubšim urejevalnikom in dodate spodnjo vrstico, da izklopite seznam imenikov Apache:

Options -Indexes 

Nato znova zaženite spletni strežnik 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

Zdaj preverite rezultat, tako da v brskalnik vtipkate http://www.example.com/tecmint, prejeli boste sporočilo, podobno spodnjemu.

To je vse! V tem članku smo opisali, kako onemogočiti seznam imenikov v spletnem strežniku Apache z datoteko .htaccess. V naslednjih člankih bomo obravnavali še dve uporabni in enostavni metodi za isti namen, do takrat pa ostanite povezani.

Kot običajno uporabite spodnji obrazec za povratne informacije in nam pošljite svoje mnenje o tej vadnici.