NeuBlack Friday – 50 % Rabatt auf die erste Zahlung
WordPress-Fehlerbehebung

403 Verboten auf einer WordPress-Seite

Die Anfrage wurde verstanden und abgelehnt. Die Ablehnung kam vom Webserver, einer Firewall oder einer Berechtigungsregel - WordPress ist selten involviert.

403 Forbidden — You don't have permission to access this resource.

Kurzantwort

Beachten Sie, ob die gesamte Site 403s oder nur einige URLs, und ob es folgt Ihnen oder nur ein Netzwerk betrifft. Eine Site-weite 403 ist fast immer Dateiberechtigungen oder eine Umschreibregel; eine, die einer einzelnen Person folgt, ist ein IP-Block.

Diagnose

Die wahrscheinlichsten Ursachen zuerst.

Gehen Sie die Liste der Reihe nach durch. Prüfen Sie jede Ursache, bevor Sie etwas ändern, da die Lösungen unterschiedlich sind und eine Vermutung mehr Zeit kostet als ein Befehl.

UrsacheSo prüfen Sie esLösung
Datei- oder Verzeichnisberechtigungen, die der Webserver nicht lesen kannDer Fehler ist standortweit und konstant. Verzeichnisse sollten durchführbar sein und Dateien sollten vom Benutzer des Webservers lesbar sein; alles einschränkende erzeugt genau das.Legen Sie Verzeichnisse auf 755 und Dateien auf 644 fest, die im Besitz des Benutzers PHP läuft als. Eine Wiederherstellung von einem Backup, das auf einem anderen Host aufgenommen wurde, ist der übliche Grund, warum sie drifteten.
Ein Sicherheits-Plugin hat Ihre Adresse blockiertAndere Leute können die Seite normal nutzen und ein anderes Netzwerk funktioniert auch für Sie. Das Protokoll des Plugins zeichnet den Block mit Ihrer Adresse und einem Grund auf.Löschen Sie den Block aus der eigenen Liste des Plugins und erhöhen Sie dann den Schwellenwert, der ihn ausgelöst hat. Wiederholte fehlgeschlagene Anmeldungen sind der häufigste Auslöser.
Eine Rewrite- oder Access-Regel verneint den PfadNur bestimmte URLs scheitern - wp-login.php, wp-admin, xmlrpc.php - während der Rest der Website in Ordnung ist.Die Deny-Regel finden Sie in der Serverkonfiguration oder .htaccess. Härtende Snippets, die aus einem Tutorial kopiert werden, sind die übliche Quelle, und sie beschränken oft mehr als beabsichtigt.
Die Indexdatei fehlt oder ist nicht aufgeführtEine Verzeichnis-URL 403s, bei der eine Datei-URL im selben Verzeichnis funktioniert. Der Server weigert sich, ein Verzeichnis aufzulisten, das nichts als Standard hat.Stellen Sie die fehlende Indexdatei wieder her oder bestätigen Sie die Root-Punkte des Dokuments, wo Sie es für richtig halten.
Anleitung

Schritt für Schritt zur Lösung.

Die Befehle setzen WP-CLI und Shell-Zugriff voraus. Jeder Schritt erklärt, was er tut, damit Sie ihn bei Bedarf im Dashboard oder per SFTP ausführen können.

  1. Bestimmen Sie die Form des Versagens

    Site-wide oder ein Pfad; jeder oder nur Sie. Diese beiden Antworten entfernen den größten Teil der Liste, bevor ein Befehl ausgeführt wird.

    curl -sS -o /dev/null -w '%{http_code}\n' https://example.com/
    curl -sS -o /dev/null -w '%{http_code}\n' https://example.com/wp-login.php
  2. Lesen Sie die eigene Erklärung des Servers

    Ein 403 wird fast immer mit einem Grund protokolliert, und der Grund benennt die Schicht, die abgelehnt hat.

    tail -n 50 /var/log/nginx/error.log
  3. Reset Ownership und Berechtigungen

    Verzeichnisse, die durchführbar sind, Dateien, die lesbar sind, beides im Besitz des PHP-Benutzers.

    find . -type d -exec chmod 755 {} \;
    find . -type f -exec chmod 644 {} \;
  4. Nehmen Sie .htaccess aus der Gleichung

    Benennen Sie es um, anstatt es zu bearbeiten, damit Sie es unverändert zurücksetzen können. WordPress schreibt auf Anfrage ein neues neu.

    mv .htaccess .htaccess.bak
    wp rewrite flush --hard
  5. Bestätigen Sie aus einem anderen Netzwerk

    Wenn die Website von anderswo aus antwortet, während sie Sie immer noch ablehnt, handelt es sich um einen Adressblock und keine Änderung der Berechtigung hilft.

    curl -sS -o /dev/null -w '%{http_code}\n' --interface eth1 https://example.com/
Mit MagicWP

Darum kümmert sich die Plattform.

Dateibesitz wird auf den eigenen Benutzer der Website bei der Bereitstellung eingestellt und so von der Plattform gehalten, so dass die Berechtigungsdrift, die einer manuellen Wiederherstellung folgt, hier nicht stattfindet. Blockieren erfolgt am Rand und nicht durch ein Plugin in WordPress, was bedeutet, dass eine blockierte Adresse niemals PHP erreicht und ebenso nützlich kann ein Administrator, der sich selbst aussperrt, ohne Datenbankzugriff zurückgelassen werden.

Häufige Fragen

Häufige Fragen.

Warum können alle anderen die Website nutzen, während ich nicht kann?
Ein Sicherheits-Plugin oder eine Firewall hat Sie zu einer Blockliste hinzugefügt, normalerweise nach wiederholten fehlgeschlagenen Anmeldungen, und der Block folgt Ihrem Netzwerk und nicht Ihrem Konto.
Sollte ich Berechtigungen auf 777 setzen, um es zu testen?
Es behebt selten eine echte 403 und macht jede Datei durch etwas beschreibbar, das auf dem Computer läuft, was eine defekte Seite in eine auswertbare umwandelt. 755 und 644 mit korrektem Besitz sind das Ziel.
Die 403 erscheint nur auf wp-admin. Was bedeutet das?
Jemand hat den Admin-Pfad durch Adresse eingeschränkt oder Authentifizierung davor hinzugefügt, und die Einschränkung hat überlebt, wer sie hinzugefügt hat.
Wie unterscheidet sich ein 403 von einem 401?
A 401 fragt nach Anmeldeinformationen und akzeptiert sie. A 403 hat bereits entschieden, und das Senden von Anmeldeinformationen ändert nichts an der Antwort.
Verwandte Fehler

War es keiner davon?

Diese Fehler können im Browser ähnlich aussehen.