Poista Apache Web Directory Listing käytöstä .htaccess-tiedoston avulla


Apache-verkkopalvelimesi suojaaminen on yksi tärkeimmistä tehtävistä, varsinkin kun luot uutta verkkosivustoa.

Jos esimerkiksi luot uuden verkkosivustohakemiston nimeltä tecmint Apache-palvelimellesi (/var/www/tecmint tai /var/www/html/ tecmint) ja unohdit sijoittaa siihen index.html-tiedoston, saatat yllättyä tietää, että kaikki verkkosivustosi vierailijat voivat saada täydellisen luettelon kaikista tärkeistä tiedostoistasi ja kansioistasi. kirjoittamalla selaimeen http://www.example.com/tecmint.

Tässä artikkelissa näytämme, kuinka voit poistaa käytöstä tai estää Apache-verkkopalvelimesi hakemistoluettelon lisäämisen .htaccess-tiedoston avulla.

Näin hakemistoluettelo näytetään vierailijoille, kun index.html ei ole siinä.

Ensinnäkin .htaccess (tai hypertext access) on tiedosto, jonka avulla verkkosivuston omistaja voi hallita palvelinympäristön muuttujia sekä muita tärkeitä vaihtoehtoja oman/ hänen verkkosivustonsa.

Saat lisätietoja tästä tärkeästä tiedostosta lukemalla seuraavat artikkelit, joilla voit suojata Apache-verkkopalvelimesi .htaccess-menetelmällä:

  1. 25 Apache Htaccess -temppua Apache-verkkopalvelimen suojaamiseen
  2. Salasanasuojaa Apache-verkkohakemistot .htaccess-tiedoston avulla

Tällä yksinkertaisella menetelmällä .htaccess-tiedosto luodaan mihin tahansa ja/tai jokaiseen verkkosivuston hakemistopuun hakemistoon ja tarjoaa ominaisuuksia ylimpään hakemistoon, alihakemistoihin ja niiden sisällä oleviin tiedostoihin.

Aktivoi ensin verkkosivustosi .htaccess-tiedosto Apachen master-määritystiedostossa.

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

Etsi sitten alla oleva osio, jossa AllowOverride-direktiivin arvoksi on asetettava AllowOverride All.

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

Jos sinulla on kuitenkin olemassa .htaccess-tiedosto, tee siitä varmuuskopio seuraavasti: olettaen, että sinulla on se hakemistossa /var/www/html/tecmint/( ja haluat poistaa tämän hakemiston luetteloimisen käytöstä):

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

Sitten voit avata (tai luoda ) sen tiettyyn hakemistoon muokkausta varten suosikkieditorillasi ja lisätä alla olevan rivin Apache-hakemistoluettelon poistamiseksi käytöstä:

Options -Indexes 

Käynnistä seuraavaksi Apache-verkkopalvelin uudelleen:

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

Tarkista nyt tulos kirjoittamalla selaimeen http://www.example.com/tecmint. Saat seuraavankaltaisen viestin.

Siinä kaikki! Tässä artikkelissa kuvailimme, kuinka hakemistoluettelo poistetaan käytöstä Apache-verkkopalvelimessa .htaccess-tiedoston avulla. Käsittelemme myös kaksi muuta hyödyllistä ja helppoa menetelmää samaan tarkoitukseen tulevissa artikkeleissa, siihen asti pysykää yhteydessä.

Kuten tavallista, käytä alla olevaa palautelomaketta lähettääksesi meille ajatuksesi tästä opetusohjelmasta.