Website-Suche

Deaktivieren Sie die Apache-Webverzeichnisauflistung mithilfe der .htaccess-Datei


Die Sicherung Ihres Apache-Webservers ist eine der wichtigsten Aufgaben, insbesondere wenn Sie eine neue Website einrichten.

Wenn Sie beispielsweise ein neues Website-Verzeichnis mit dem Namen „tecmint“ unter Ihrem Apache-Server erstellen (/var/www/tecmint oder /var/www/html/ tecmint) und vergessen haben, eine „index.html“-Datei darin abzulegen, werden Sie überrascht sein, dass alle Besucher Ihrer Website ganz einfach eine vollständige Liste aller Ihrer wichtigen Dateien und Ordner erhalten können indem Sie http://www.example.com/tecmint in den Browser eingeben.

In diesem Artikel zeigen wir Ihnen, wie Sie die Verzeichnisauflistung Ihres Apache-Webservers mithilfe der Datei .htaccess deaktivieren oder verhindern.

Auf diese Weise wird Ihren Besuchern die Verzeichnisliste angezeigt, wenn index.html darin nicht vorhanden ist.

Zunächst einmal ist .htaccess (oder Hypertext Access) eine Datei, die es einem Websitebesitzer ermöglicht, die Serverumgebungsvariablen sowie andere wichtige Optionen zu steuern, um die Funktionalität seiner Website zu verbessern. ihre Website(s).

Weitere Informationen zu dieser wichtigen Datei finden Sie in den folgenden Artikeln zum Sichern Ihres Apache-Webservers mit der Methode .htaccess:

  1. 25 Apache Htaccess-Tricks zum Sichern des Apache-Webservers
  2. Schützen Sie Apache-Webverzeichnisse mit einem Passwort mithilfe der .htaccess-Datei

Mit dieser einfachen Methode wird die Datei .htaccess in einem beliebigen und/oder jedem Verzeichnis im Website-Verzeichnisbaum erstellt und bietet Funktionen für das oberste Verzeichnis, die Unterverzeichnisse und die darin enthaltenen Dateien.

Aktivieren Sie zunächst die Datei .htaccess für Ihre Website in der Master-Apache-Konfigurationsdatei.

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

Suchen Sie dann nach dem Abschnitt unten, in dem der Wert der AllowOverride-Direktive auf AllowOverride All gesetzt werden muss.

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

Wenn Sie jedoch über eine vorhandene .htaccess-Datei verfügen, erstellen Sie wie folgt eine Sicherungskopie davon: Angenommen, Sie haben es in /var/www/html/tecmint/ (und möchten die Auflistung dieses Verzeichnisses deaktivieren):

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

Anschließend können Sie es mit Ihrem bevorzugten Editor im jeweiligen Verzeichnis zur Änderung öffnen (oder erstellen) und die folgende Zeile hinzufügen, um die Apache-Verzeichnisliste zu deaktivieren:

Options -Indexes 

Als nächstes starten Sie den Apache-Webserver neu:

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

Überprüfen Sie nun das Ergebnis, indem Sie http://www.example.com/tecmint in den Browser eingeben. Sie sollten eine Meldung ähnlich der folgenden erhalten.

Das ist alles! In diesem Artikel haben wir beschrieben, wie Sie die Verzeichnisliste im Apache-Webserver mithilfe der Datei .htaccess deaktivieren. Wir werden in den kommenden Artikeln auch zwei weitere nützliche und einfache Methoden für denselben Zweck behandeln, bis dahin bleiben Sie auf dem Laufenden.

Nutzen Sie wie gewohnt das unten stehende Feedback-Formular, um uns Ihre Meinung zu diesem Tutorial mitzuteilen.