Wissensdatenbank›Webhosting›Datei .htaccess

Webhosting – Datei .htaccess

Auf dieser SeiteWann Sie diese Anleitung verwendenDie Datei .htaccessRestore default .htaccessEinstellungen der .htaccessEinschränkungen der .htaccess im WebhostingHäufige ProblemeHäufig gestellte Fragen

Brauchen Sie Hilfe mit Ihrer Website? Finden Sie Ihren Spezialisten für VEDOS Profi ⧉.

In diesem Artikel erfahren Sie:


Wann Sie diese Anleitung verwenden

Verwenden Sie diese Anleitung zum Beispiel in den folgenden Situationen:

  • Eine Subdomain oder eine weitere Domain zeigt den Inhalt der Hauptwebsite an, oder Links führen zu Adressen mit /domains/. Siehe Subdomain zeigt eine andere Website an.
  • Nach der Bearbeitung der .htaccess erscheint Internal Server Error oder Too Many Redirects. Siehe Neue Einstellung funktioniert nicht.
  • Das Sicherheits-Plugin von WordPress meldet den Fehler open_basedir restriction in effect bei der Datei .htaccess. Siehe Plugin meldet open_basedir.
  • Sie müssen die Standard-.htaccess wiederherstellen, weil Sie sie gelöscht oder beschädigt haben oder weil Sie eine neue Website anstelle der alten anlegen. Das Vorgehen finden Sie im Kapitel Restore default .htaccess.
  • Sie möchten HTTPS erzwingen, eine alte Adresse weiterleiten oder den Zugriff nach IP-Adresse einschränken. Siehe Einstellungen der .htaccess.
  • Die Website, zum Beispiel ein Seiteneditor, lädt Skripte instabil. Sie können versuchen, den Proxy-Cache zu deaktivieren.

Die Datei .htaccess

Datei .htaccess (am Anfang muss ein Punkt stehen) enthält Einstellungen des Apache-Servers, die den Betrieb des Webhostings steuern. Zu den häufigsten Anwendungen gehören Routing in der Verzeichnisstruktur des Webhostings, HTTPS erzwingen, Weiterleitung von Webadressen und Deaktivierung des Proxy-Cache.

Zugriff auf die Datei .htaccess

Für den Zugriff auf die Datei .htaccess gehen Sie wie folgt vor:

  1. Melden Sie sich per FTP bei Ihrem Hosting an, zum Beispiel mit dem Client WebFTP ⧉ (Anleitung).
  2. Öffnen Sie den Ordner www.
  3. Suchen Sie unter den Dateien die Datei mit dem Namen .htaccess.
WebFTP - Datei .htaccess im Ordner www
WebFTP – Datei .htaccess im Ordner www

Die Regeln in der Standard-.htaccess gelten für alle Websites. Regeln in Dateien .htaccess in anderen Verzeichnissen (oft zum Beispiel www/domains/domain.tld) gelten nur für den Inhalt des jeweiligen Verzeichnisses und aller seiner Unterverzeichnisse.

Sie können mehr als eine .htaccess-Datei haben – das hängt von der Anzahl der Verzeichnisse ab, in denen Sie spezifische Regeln festlegen möchten.


Restore default .htaccess

Wenn Sie die Ursache eines Fehlers, der durch die bearbeitete Standarddatei .htaccess verursacht wird, nicht finden oder wenn Sie die Datei versehentlich gelöscht haben, können Sie sie direkt in der Kundenadministration wiederherstellen.

  1. Melden Sie sich bei Kundenadministration ⧉.
  2. Wählen Sie im oberen Menü Hosting Services Webhosting oder WMS.
  3. Wählen Sie das Webhosting aus, bei dem Sie die Datei .htaccess wiederherstellen möchten.
  4. Klicken Sie im linken Menü auf Tools.
  5. Klicken Sie in der Tabelle Restore default .htaccess auf die Schaltfläche Restore .htaccess.
Schaltfläche zum Wiederherstellen der Standarddatei .htaccess
Schaltfläche zum Wiederherstellen der Standarddatei .htaccess

Beim Wiederherstellen der Standarddatei .htaccess mit dieser Schaltfläche wird gleichzeitig eine Sicherung der bestehenden Datei erstellt, die das System in denselben Ordner kopiert.

Die Schaltfläche stellt nur die Datei .htaccess im Ordner www. Andere .htaccess-Dateien, zum Beispiel von Redaktionssystemen erstellte, müssen Sie auf andere Weise wiederherstellen.

Die Standarddatei .htaccess enthält keine HTTPS-Regeln. Wenn Sie HTTPS verwenden, fügen Sie die Regeln manuell in die wiederhergestellte Datei ein.

Einstellungen der .htaccess

Bedingungen und Befehle in der Datei .htaccess verwenden reguläre Ausdrücke. Wenn Sie sich damit nicht auskennen, können Sie die Datei trotzdem bearbeiten, folgen Sie der Anleitung aber besonders aufmerksam. Eine nicht funktionierende .htaccess verursacht den Fehler 500 – Internal Server Error.

Bevor Sie die Datei .htaccess bearbeiten, erstellen Sie eine Sicherung davon.

In diesem Kapitel finden Sie Anleitungen zu:

Routing in der Verzeichnisstruktur des Webhostings

Der Hauptzweck unserer Standarddatei .htaccess ist es, Anfragen in die richtigen Ordner des Webhostings zu leiten, insbesondere domains und subdom. Wenn Sie Fehler bei der Navigation in Verzeichnisse beobachten, korrigieren Sie die Datei .htaccess so, dass sie den folgenden Text enthält, oder sie vollständig wieder her.

RewriteEngine On

# ganze Domains (Aliase)
RewriteCond %{REQUEST_URI} !^domains/
RewriteCond %{REQUEST_URI} !^/domains/
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)$
RewriteCond %{DOCUMENT_ROOT}/domains/%2 -d
RewriteRule (.*) domains/%2/$1 [DPI]

# Subdomains (mit oder ohne www am Anfang)
RewriteCond %{REQUEST_URI} !^subdom/
RewriteCond %{REQUEST_URI} !^/subdom/
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)\.([^\.]*)\.([^\.]*)$
RewriteCond %{DOCUMENT_ROOT}/subdom/%2 -d
RewriteRule (.*) subdom/%2/$1 [DPI]

# Aliase - korrekte Weiterleitung bei fehlendem /
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^domains/[^/]+/(.+[^/])$ /$1/ [R]

# Subdomains - korrekte Weiterleitung bei fehlendem /
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^subdom/[^/]+/(.+[^/])$ /$1/ [R]

HTTPS einrichten

Bei der Aktivierung von HTTPS legen Sie unter anderem eine .htaccess-Regel fest, die die HTTPS-Variante als Standard auswählt. Tragen Sie sie direkt in die Datei .htaccess im Ordner www ein, unmittelbar unter der Zeile RewriteEngine On.

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R=301,L]
Header set Content-Security-Policy "upgrade-insecure-requests;"

Das Hinzufügen dieses Codes kann dazu führen, dass unser Anwendungsinstallerblockiert wird. Sollten Sie bei der Installation auf ein Problem mit der Datei .htaccess stoßen, stellen Sie sie vorübergehend wieder her und überschreiben Sie sie nach erfolgreicher Installation wieder mit der automatisch erstellten Sicherung.

Die Standarddatei .htaccess enthält keine HTTPS-Regeln. Wenn Sie sie wiederhergestellt haben und die HTTPS-Regeln verwenden möchten, fügen Sie sie erneut hinzu.

URL-Weiterleitung

Mit der folgenden Regel, bekannt als 301-Weiterleitung, teilen Sie Browsern und Suchmaschinen mit, dass die Seite dauerhaft von der alten Adresse auf die neue verschoben wurde. Besonders Suchmaschinen betrachten den verschobenen Inhalt dann nicht als Duplikat.

Kopieren Sie den folgenden Text und fügen Sie ihn in die Datei .htaccess unter der Zeile RewriteEngine Onein. Passen Sie ihn anschließend nach diesen Regeln an:

  1. Im Text alteadresse\.tld den Text alteadresse durch die Adresse, von der aus weitergeleitet wird, und tld durch die korrekte Endung. Stellen Sie sicher, dass vor dem Zeichen . (Punkt) das Zeichen \ (Backslash) steht.
  2. Im Text http://novaadresa.tld ersetzen Sie neueadresse.tld durch die Adresse, auf die Sie die Website weiterleiten. Verwendet die neue Adresse https, ersetzen Sie auch den Text http.
  3. Wenn Sie auf die Startseite der neuen Adresse weiterleiten möchten, löschen Sie in der zweiten Zeile die Zeichen $1.
RewriteCond %{HTTP_HOST} ^(www\.)?alteadresse\.tld$
RewriteRule (.*) http://neueadresse.tld/$1 [R=301,L]

Zugriff für ausgewählte IP-Adressen beschränken

In der Datei .htaccess können Sie den Zugriff auf bestimmte (oder alle) Dateien auf bestimmte IP-Adressen beschränken. Hier ein Beispiel für das Blockieren des Zugriffs auf die Datei wp-login.php (Anmeldeseite der WordPress-Administration):

<Files wp-login.php>
Order Deny,Allow
Deny from all
Allow from X.X.X.X
</Files>

Sie können den Code nach diesen Regeln anpassen:

  • In <Files ___> können Sie entweder eine bestimmte Datei oder das Zeichen * für alle Dateien im jeweiligen Ordner und in Unterordnern angeben.
  • Die Adresse X.X.X.X ersetzen Sie durch Ihre IPv4- oder IPv6-Adresse.
  • Die Direktive Allow from X.X.X.X können Sie mehrfach angeben, jeweils in einer eigenen Zeile.

Zugriffe auf die Datei von anderen IP-Adressen enden mit dem Fehler 403.

Der einzige Weg, von einer gesperrten Adresse auf die Datei zuzugreifen, besteht darin, diese Adresse zur Liste der erlaubten Adressen hinzuzufügen oder den Code zu entfernen. Keinen dieser Eingriffe führt der Support durch.

Proxy-Cache deaktivieren

Wenn Sie bei einer Website oder einem Teil davon (Verzeichnis, Subdomain) den Proxy-Cache deaktivieren müssen, fügen Sie diesen Code in die Datei .htaccess ein:

# DISABLE CACHING
<IfModule mod_headers.c>
Header set Cache-Control "no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires 0
</IfModule>

Einschränkungen der .htaccess im Webhosting

Um unerwünschtes Serververhalten zu verhindern, haben wir für die Datei .htaccess bestimmte Einschränkungen festgelegt.

Wenn Sie einen nicht erlaubten Befehl oder Parameter beim Befehl Options verwenden, fällt die gesamte Website aus, was sich äußert in Fehler 500 – Internal Server Error.

In der Webserver-Konfiguration dürfen Sie folgende Befehlskategorien für htaccess:

  • AuthConfig
  • FileInfo
  • Limit
  • Indexes
  • Options*

Vermeiden Sie die Verwendung der Befehle:

  • php_flag
  • php_value
  • ServerSignature
  • SetEnv
  • SetHandler
  • XBitHack
  • AddHandler
  • Options*

* Beim Befehl Options dürfen Sie nur die Option Indexes, die übrigen sind untersagt.


Häufige Probleme

Zu den häufigen Problemen mit der Datei .htaccess gehören:

Neue Einstellung funktioniert nicht

Problem: Nach einer Änderung der .htaccess-Einstellungen zeigt das neue Verhalten keine Wirkung, oder die Website funktioniert überhaupt nicht mehr. Am häufigsten handelt es sich um die Fehler Internal Server Error und Too Many Redirects.

Ursache: Es kann sich um einen Fehler bei der Benennung oder dem Speicherort der Datei .htaccess, der Platzierung des Codes in dieser Datei oder seiner Korrektheit handeln.

Lösung: Führen Sie eine gründliche Prüfung durch und korrigieren Sie die Fehler:

  1. Prüfen Sie, ob sich die Datei im richtigen Ordner befindet (nicht nur www) und genau so heißt: .htaccess, einschließlich des Punkts am Anfang.
  2. Stellen Sie sicher, dass der Code an der richtigen Stelle der Datei steht (zum Beispiel am Anfang nach dem Befehl RewriteEngine On), und dass alle Teile, die einen Platzhaltertext enthielten (z. B. domain.tld) durch den richtigen Text ersetzt sind.
  3. Wenn die Datei blockierte Befehleenthält, deaktivieren Sie die betreffenden Zeilen, indem Sie das Zeichen # an den Zeilenanfang setzen.

Die Wiederherstellung der Standard-.htaccess funktioniert nicht

Problem: Nach dem Wiederherstellen der Standard-.htaccess verhält sich die Website weiterhin unverändert.

Ursache: Entweder stellen Sie die falsche .htaccess wieder her, oder die falsche Darstellung der Website ist im Cache gespeichert.

Lösung: Laden Sie die Seite ohne Browser-Cache neu mit der Tastenkombination Ctrl+Shift+R.

Wenn Sie den Standardzustand der Datei .htaccess an einem anderen Ort als im Ordner www (oder die .htaccess eines Redaktionssystems, zum Beispiel WordPress) wiederherstellen müssen, beziehen Sie sie aus einer Sicherung oder von der Website des Redaktionssystems.

Ein unbekanntes Programm überschreibt die .htaccess

Problem: Nach einer Änderung der .htaccess-Einstellungen wird sie kurz darauf durch unerwünschten Code überschrieben.

Ursache: Auf dem Webhosting befindet sich Software (meist ein Plugin, es kann auch Malware sein), die in die .htaccess eigenen Code schreibt.

Lösung: Suchen Sie den Verursacher der Änderungen in der Datei .htaccess:

  1. Sicherheits-Plugins blockieren meist mithilfe der .htaccess den Zugriff auf sensible Bereiche des Systems, zum Beispiel auf die Administration des Redaktionssystems. Beim Zugriffsversuch beobachten Sie dann oft den Fehler 403: Forbidden. Die Lösung ist, das betreffende Sicherheits-Plugin neu zu konfigurieren oder zu deaktivieren.
  2. Updates des Redaktionssystems können problematischen Code in die eigene .htaccess einführen, der meist den Fehler 500 – Internal Server Error. Die Lösung ist, automatische Updates zu deaktivieren und unmittelbar nach einem manuellen Update schnell in den Code der .htaccess einzugreifen.
  3. Malware beeinträchtigt üblicherweise die Darstellung der Seite oder leitet sie auf unerwünschte URLs um. Die Lösung ist eine gründliche Bereinigung der Website von Viren, die VEDOS leider weder vermittelt noch dafür Support leistet.

Subdomain zeigt eine andere Website an

Problem: Eine Subdomain oder eine weitere Domain zeigt die Hauptwebsite oder die Startseite an, oder Links führen zu Adressen mit /domains/, auch wenn Sie die Website im richtigen Ordner hochgeladen haben.

Ursache: Die Datei .htaccess im Ordner www leitet Anfragen nicht in die Ordner domains und subdom weiter, oder sie wird von einer anderen .htaccess im Webverzeichnis überschrieben. Häufig ist auch eine falsche Website-Adresse in den Einstellungen des Redaktionssystems die Ursache (in der Datenbank steht die Adresse der Hauptdomain statt der Subdomain).

Lösung: Stellen Sie im Ordner www die Standard-.htaccess wieder her, oder verwenden Sie den Code aus dem Abschnitt Weiterleitung in der Verzeichnisstruktur. Prüfen Sie die Verzeichnisstruktur anhand der Artikel Webhosting – Subdomains und Webhosting – Wiederherstellung der Verzeichnisstruktur (Reset) FTP. Prüfen Sie beim Redaktionssystem, dass in den Einstellungen die Adresse der Subdomain eingetragen ist. Laden Sie die Seite abschließend ohne Browser-Cache mit der Tastenkombination Ctrl+Shift+R.

Plugin meldet open_basedir

Problem: Ein Sicherheits-Plugin von WordPress (z. B. Wordfence oder Really Simple Security) meldet open_basedir restriction in effect. File(/.htaccess) is not within the allowed path.

Ursache: Der Befehl open_basedir ist auf dem Webhosting aus Sicherheitsgründen gesperrt, daher kann das Plugin die Datei .htaccess nicht bearbeiten.

Lösung: Setzen Sie die .htaccess von WordPress gemäß der WordPress-Dokumentation auf den Standard zurück. Funktioniert der Zugriff über WebFTP nicht, verbinden Sie sich mit einem Desktop-FTP-Client, zum Beispiel FileZilla. Das weitere Vorgehen ist im Kapitel beschrieben Ein unbekanntes Programm überschreibt die .htaccess.


Häufig gestellte Fragen

Wie stelle ich die Standard-.htaccess eines Redaktionssystems wieder her?

Bevor Sie die Datei .htaccess bearbeiten, erstellen Sie eine Sicherung. Wenn Sie keine haben, installieren Sie entweder das Redaktionssystem neu oder suchen Sie den Standardinhalt der .htaccess derselben CMS-Version an anderer Stelle. Wenn alles andere fehlschlägt, kontaktieren Sie den Support.

Wo finde ich erweiterte .htaccess-Befehle?

Für erweiterte .htaccess-Befehle bieten wir keinen Support. Einige finden Sie in den Community-Artikeln in der Kategorie .htaccess ⧉. Beachten Sie bei online gefundenen Anleitungen die Einschränkungen der .htaccess im Webhosting.

Ich habe keinen Zugriff über WebFTP. Repariert der Support die .htaccess?

Versuchen Sie zuerst die Verbindung mit einem Desktop-FTP-Client, zum Beispiel FileZilla. Wenn Sie auf einer Reparatur durch uns bestehen, geben Sie dem Support einen temporären FTP-Zugang und senden Sie Ihre Anfrage über das Kontaktformular ⧉.

Die Website lädt Skripte instabil. Hilft das Deaktivieren des Proxy-Cache?

Möglicherweise, sicher ist es aber nicht. Verwenden Sie in der .htaccess den Code aus dem Kapitel Proxy-Cache deaktivieren. Hilft das nicht, setzen Sie die Einstellung auf den ursprünglichen Zustand zurück.

War dieser Artikel hilfreich?

Ihr Feedback hilft uns, unsere Artikel zu verbessern.

Ihre Nachricht geht an das Dokumentationsteam, das sie nicht beantwortet. Wenn Sie Hilfe benötigen, nutzen Sie bitte unser Kontaktformular. Bitte geben Sie hier keine Passwörter oder personenbezogenen Daten an.

Haben Sie nicht gefunden, wonach Sie suchen?

Fragen Sie andere Kunden auf der Community-Website Help.