Blog

Beiträge, Snippets, Tipps & Tricks
rund um Webdesign, SEO & Co.

.htaccess – Eine Einführung

von • Themen: ,
htaccess-einfuehrung

Wer ein Content-Management-System wie beispielsweise WordPress auf einem Apache Webserver nutzt, der wird möglicherweise bereits über die .htaccess-Datei im Root-Verzeichnis gestolpert sein. Aber auch statische Webseiten können mit einer solchen Konfigurationsdatei ausgestattet werden. In diesem Artikel möchten wir uns einmal etwas genauer mit der .htaccess-Datei beschäftigen und erläutern, was eine .htaccess Datei überhaupt ist, was man damit anstellen kann und welche Voraussetzungen für die Nutzung geschaffen werden müssen.

Egal ob WordPress, Joomla, ein anderes CMS oder gar eine statische Webseite – die berühmt-berüchtigten .htaccess-Dateien finden sich nahezu auf jedem Apache Webserver und erweisen sich für die verschiedensten Einsatzzwecke als äußerst nützlich. Nicht nur im Bereich SEO birgt eine .htaccess großes Potenzial, auch in Bezug auf die Sicherheit, von beispielsweise einem CMS, können einige „Tweaks“ genutzt werden.

Was ist eine .htaccess Datei

„htaccess“ steht für die englische Begrifflichkeit „hypertext access“, zu Deutsch „Hypertext-Zugriff“. Dabei handelt es sich um eine Konfigurationsdatei, die auf NCSA-kompatiblen Webservern, wie beispielsweise auf dem weitverbreiteten Apache, zum Einsatz kommt. Der Punkt am Anfang des Dateinamens ist dabei nicht etwa ein Tippfehler, sondern stammt aus der Unix-Welt.

In einer .htaccess-Datei können diverse Regeln festgelegt werden, die sich nur auf das Verzeichnis auswirken, in dem sich die Datei befindet. Das ermöglicht einen äußerst flexiblen Einsatz sowie eine individuelle Konfiguration verschiedener Verzeichnisse einer Webseite oder eines Projekts. Ein weiterer Vorteil: Werden Änderungen in der .htaccess-Datei durchgeführt, ist kein Neustart des Webservers vonnöten, weil die Datei bei jeder Anfrage an den Webserver erneut ausgewertet wird. Einziger Nachteil ist, dass diese Prozedere natürlich ein wenig Rechenleistung beansprucht.

Voraussetzungen

Grundvoraussetzung, um eine .htaccess-Datei auf dem eigenen Server/Webspace nutzen zu können, ist, wie eingangs bereits erwähnt, ein NCSA-kompatibler Webserver, wie etwa der Apache. Wer den IIS von Microsoft oder nginx im Einsatz hat, kann von der .htaccess-Datei leider keinen Gebrauch machen. Um herauszufinden, welcher Webserver installiert wurde, genügt ein kurzer Anruf beim Hostingprovider. Alternativ kann die verwendete Webserversoftware über phpinfo() herausgefunden werden. Dazu muss einfach eine PHP-Datei mit beliebigem Namen und dem untenstehenden Inhalt in ein öffentliches Verzeichnis gelegt werden. Ruft man diese Datei anschließend im Browser auf, erhält man alle Informationen zum Webserver, selbstverständlich auch die eingesetzte Software.

<?php phpinfo(); ?>

Sinn und Zweck einer .htaccess

Sinn und Zweck einer .htaccess-Datei ist letztlich schlicht die individuelle Konfiguration des Webservers durch die verschiedenen Nutzer beziehungsweise Kunden auf einem Server. Die in der zentralen Konfigurationsdatei httpd.conf festgelegten Regeln des Webservers werden, insofern der Serveradministrator die Nutzung einer .htaccess-Datei gestattet, nämlich von selbiger überschrieben. Je nach Konfiguration und installierter Module auf dem Server kann der „Funktionsumfang“ einer .htaccess-Datei auch mehr oder weniger eingeschränkt sein.

Anwendungsbeispiele

Dass eine .htaccess-Datei auf einem Apache-Webserver ein äußerst mächtiges Konfigurationswerkzeug darstellt, machen die breit gefächerten „Einsatzgebiete“ deutlich. Mit einer .htaccess-Datei können beispielsweise nicht nur bestimmte Verzeichnisse mit einem Passwort geschützt werden, auch im SEO-Bereich erfreut sich die Konfigurationsdatei einer großen Beliebtheit. Unter anderem können über eine .htaccess beispielsweise sogenannte Redirects festgelegt werden. Dabei handelt es sich um Weiterleitungen von URLs, bei denen je nach Art der Weiterleitung das bestehende Google-Ranking an die Zielwebseite „übertragen“ werden kann. Ein weiteres Einsatzgebiet stellt der Sicherheitsbereich dar. Mit diversen Regeln, wie etwa dem bereits erwähnten Passwortschutz, kann die Sicherheit einer Webseite erhöht werden.

Wie einfach die Arbeit mit einer .htaccess-Datei sein kann, möchten wir anhand einer 301 Weiterleitung demonstrieren.

Eine 301-Weiterleitung, auch bekannt als 301 Redirect, teilt dem anfragenden Client, beispielsweise einem Webseitenbesucher oder dem Google-Bot mit, dass die angeforderte URL dauerhaft verschoben und fortan unter einer anderen URL zu finden ist. Einzige Voraussetzung dafür ist die Erlaubnis seitens des Serveradministrators, .htaccess-Dateien nutzen zu dürfen, sowie das Apache-Modul mod_rewrite. Im Falle eines Redirects kann auch mit PHP gearbeitet werden, wenn beispielsweise ein nginx Webserver zum Einsatz kommt.

Folgender Code erzeugt eine 301 Weiterleitung. Die erste URL (/verzeichnis/ein-dokument.html) gibt das weiterzuleitende Dokument an. Der zweite Pfad (http://www.domain.de/dokument.html) gibt an, wohin die Reise gehen soll. Dabei ist zu beachten, dass die zweite URL mit einem Leerzeichen von der ersten URL getrennt wird.

RewriteEngine On
Redirect 301 /vz/dokument.html http://www.domain.de/dokument-neu.html

 
Folgender Code erzeugt ebenfalls eine 301 Weiterleitung, allerdings mit PHP. Der Code muss im weiterzuleitenden Dokument eingefügt werden.
 

<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.domain.de/neues-dokument.php");
header("Connection: close");
?>

Alternativen zur .htaccess

Wie bereits anhand des obigen Anwendungsbeispiels deutlich geworden sein dürfte, gibt es zur .htaccess-Datei einige Alternativen. PHP beispielsweise eignet sich hervorragend für viele Dinge, sofern keine .htaccess-Datei zur Verfügung steht. Gewisse Einschränkungen müssen hierbei allerdings in Kauf genommen werden. Microsoft stellt für seinen Webserver IIS selbstverständlich auch einige Alternativen zur Verfügung.

Fazit

Die Vorteile der Konfigurationsdatei .htaccess liegen auf der Hand. Eine schnelle und flexible Konfiguration von Verzeichnissen einer Webseite ist möglich, ohne Zugriff auf die zentrale Konfigurationsdatei zu erlangen. Die meisten Hostingprovider gestatten den Zugriff auf die .htaccess-Datei, sollte das nicht der Fall sein, genügt unter Umständen ein Anruf zur Freischaltung. Andernfalls sollte aufgrund des hohen Mehrwerts einer .htaccess-Datei ein Wechsel des Hostinganbieters in Betracht gezogen werden.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

» «