Arama Yap Mesaj Senden
Rückruf anfordern
+90
X
X

Wählen Sie Ihre Währung

Türkische Lira $ US Dollar Euro
X
X

Wählen Sie Ihre Währung

Türkische Lira $ US Dollar Euro

Kontaktieren Sie uns

Standort Halkali Merkez Viertel Fatih Str. Ozgur Apt. No. 46, Kucukcekmece, Istanbul, 34303, TR
Technischer Leitfaden für NGINX

NGINX 403 Forbidden-Fehler wie man ihn löst?

403 Forbidden bedeutet, dass NGINX die Anfrage verstanden hat, aber den Zugriff auf die Ressource verweigert hat. Das Problem kann durch eine fehlende Indexdatei, Ordner-Ausführungsberechtigung, Besitz, Zulassungs-/Verweigerungsregel, SELinux, Symlink-Richtlinie oder Sicherheitsschicht verursacht werden.

403 ForbiddenPermission Deniedallow/denySELinuxIndex
root@server:~SSH
2026/07/17 03:31:08 [error] 2261#2261: *731 directory index of "/var/www/example/" is forbidden
2026/07/17 03:31:12 [error] 2261#2261: *734 open() "/var/www/example/index.php" failed (13: Permission denied)
AnforderungsflussClient, NGINX und Backend-Verbindungsbrempunkt
KonfigurationValidierung der aktiven Server- und Location-Blöcke
Live-DiagnoseLog, Socket, Port- und Dienstkontrolle
Sichere AnwendungTest, kontrollierter Reload und Ergebnisvalidierung
01
Technische Beschreibung

Was bedeutet NGINX 403 Forbidden?

403 ist anders als 404, was bedeutet, dass die Datei nicht gefunden wurde. NGINX sieht möglicherweise die Quelle oder das Verzeichnis, aber die Konfiguration oder der Zugriff auf das Betriebssystem wird blockiert.

Wenn die Verzeichnisanfrage keine index.php oder index.html findet und autoindex deaktiviert ist, schreibt NGINX 'directory index ... is forbidden'. In diesem Fall sollte anstelle der Erhöhung der Berechtigungen die Dokumentenwurzel und die Index-Anweisung überprüft werden.

Die Datei mit 644 und der Ordner mit 755 ist nicht ausreichend. Der NGINX-Worker-Benutzer muss Ausführungsberechtigungen auf allen übergeordneten Ordnern bis zum Document-Root haben.

Die allow- und deny-Regeln werden in der Reihenfolge ausgewertet. Ein von dem oberen http/server-Block vererbtes deny oder ein falsches IP-Netzwerk kann dazu führen, dass bestimmte Besucher eine 403-Seite sehen.

SELinux-Kontext kann den Zugriff sogar dann blockieren, wenn die Unix-Rechte auf RHEL-basierten Systemen korrekt erscheinen. Der AVC-Log sollte vor dem Schließen der Sicherheitslage überprüft werden.

Die Verwendung von 777 für die 403-Lösung ist kein Fix, sondern eine Sicherheitslücke; namei, stat, NGINX-Worker und Sicherheitslogs sollten die Zugriffskette beweisen.

02
Protokollmeldungen und ihre Bedeutung

403 Forbidden, Berechtigungsverweigerung und Zugriffsregel-Nachrichten

Suchen Sie nach dem Ausdruck, den Sie in der E-Mail, im Browser oder im SSH-Protokoll sehen. Jede Karte enthält eine Bedeutung, eine wahrscheinliche Ursache und eine sichere erste Maßnahme.

8 Registrierung
01kritik

directory index of ... ist verboten

Bedeutung: Keine geeignete Indexdatei im Verzeichnis oder Verzeichnisanzeige ist deaktiviert.

Mögliche Ursache: Falscher root, fehlende Index oder Index-Direktive.

Überprüfen Sie den Inhalt der Dokumentenwurzel und die effektive Indexzeile.
02kritik

open() ... failed (13: Permission denied)

Bedeutung: NGINX kann die Datei auf Betriebssystemebene nicht öffnen.

Mögliche Ursache: Datei-/Ordnerberechtigungen, Besitz, ACL oder SELinux.

Verwenden Sie namei, getfacl und -l, um alle Pfadkomponenten zu überprüfen.
03Warnung

Zugriff durch Regel verwehrt

Bedeutung: NGINX allow/deny oder eine ähnliche Zugriffsregel blockierte die Anfrage.

Mögliche Ursache: Falsches IP-Netzwerk, Include-Datei oder von der oberen Block geerbt.

nginx -T çıktısında allow, deny ve satisfy kurallarını bulun.
04Warnung

symbolic link not allowed or link target not accessible

Bedeutung: Symlink-Richtlinie oder Ziel-Verzeichnis-Zugriff wurde verweigert.

Mögliche Ursache: disable_symlinks, Rechte- oder Eigenalleerungleichheit.

Überprüfen Sie die NGINX-Symlink-Direktive mit readlink -f.
05Warnung

403 Forbidden nginx

Bedeutung: Der allgemeine Browser-Meldung zeigt den ursprünglichen Grund nicht an.

Mögliche Ursache: Index, Berechtigung, Zugriffsregel oder Sicherheitsschicht.

Finden Sie die error_log-Zeile der gleichen Anfrage.
06Warnung

client denied by server configuration

Bedeutung: Die Server-Konfiguration hat den Client abgelehnt.

Mögliche Ursache: IP-Richtlinie, location-Deny oder Plesk-Extra-Direktive.

Vergleiche aktive Regeln mit dem Client-IP.
07bilgi

SELinux avc: denied

Bedeutung: Kernel-Sicherheitspolitik blockierte NGINX-Zugriff.

Mögliche Ursache: Falscher Kontext oder erforderlicher boolean geschlossen.

prüfen Sie den Eintrag mit ausearch und planen Sie eine dauerhafte Kontextkorrektur.
08bilgi

Primary script unknown

Bedeutung: FastCGI-Ziel weist auf den falschen Skriptpfad hin.

Mögliche Ursache: root/alias- und SCRIPT_FILENAME-Inkompatibilität.

Überprüfen Sie den Wert von fastcgi_param SCRIPT_FILENAME mit dem document root.

Es wurden keine Datensätze gefunden, die diesem Ausdruck entsprechen.

03
Sichere erste Bewertung

SSH-Diagnosebefehle und auf welche Ausgabe ist zu achten?

Befehle sind für den Root-Zugriff vorgesehen. Sammeln Sie zunächst nur den Status und die Protokolle. Ändern Sie die dauerhafte Einstellung nicht, ohne den Grund dafür zu erkennen.

URL-Berechtigungs-Kette
namei -l /var/www/example/index.php
stat /var/www/example /var/www/example/index.php
getfacl -p /var/www/example 2>/dev/null

Zeigt den gesamten Zugriffszweig einschließlich der Elternordner an.

NGINX worker Benutzer
ps -eo user,group,cmd | grep '[n]ginx: worker'
grep -n '^user' /etc/nginx/nginx.conf

Bestimmt den tatsächlichen Benutzer, der Zugriff auf die Dateien benötigt.

Root, Index und Zugriffsregeln
nginx -T | grep -nE 'server_name|root |alias |index |allow |deny |disable_symlinks'

Zeigt aktive virtuelle Hosts und Zugriffsanweisungen an.

SELinux-Prüfung
getenforce
ls -Zd /var/www/example
ausearch -m AVC -ts recent | tail -n 50

Überprüft SELinux-Einschränkung außerhalb von Unix-Rechten.

Domain-Logs
tail -n 150 /var/log/nginx/error.log
curl -skI https://example.com/

Testet die Anfrage und die Log-Zeile gleichzeitig.

Sichere Reload
nginx -t && systemctl reload nginx

Wenn die Konfiguration erfolgreich ist, läuft sie ununterbrochen.

04
Durch Hosting-Umgebung

Ubuntu/Debian-, AlmaLinux/CloudLinux- und Plesk-Steuerelemente

Obwohl die Grundursache des NGINX-Fehlers dieselbe ist, variieren Paketpfade, Dienstnamen, Sicherheitsebenen und die Verwaltung virtueller Hosts je nach verwendeter Linux-Distribution oder Plesk-Infrastruktur.

Ubuntu / Debian

NGINX 403 Forbidden mit systemd, Paketpfad und journald-Prüfunglen.

  • Zuerst die aktive NGINX-Konfiguration und den Status des Dienstes überprüfen.
  • Vergleichen Sie das Domain-Fehler-Log mit dem systemd-Log im gleichen Zeitraum.
  • Führen Sie vor der Änderung nginx -t und anschließend ein unterbrechungsfreies Neuladen durch.
namei -l /var/www/example/index.php nginx -T | grep -nE 'root |index |allow |deny ' tail -n 100 /var/log/nginx/error.log

AlmaLinux / CloudLinux

NGINX 403 Forbidden mit SELinux, PHP-FPM-Pool und RHEL-basierten Dienstkontrollen.

  • Überprüfen Sie den aktiven Status von NGINX und den damit verbundenen Backend-Diensten.
  • Überprüfen Sie SELinux-ACV-Einträge und Sicherheitskontexte.
  • Starten Sie den Service nicht ohne die Konfigurationsprüfung durchzuführen.
namei -l /var/www/example/index.php getenforce ausearch -m AVC -ts recent | tail -n 30

Plesk Obsidian

Plesk-generierte NGINX-Virtualhostdateien in nginx 403 Forbidden Prüfungle.

  • Überprüfen Sie die zusätzlichen Direktiven im Abschnitt Domains > Apache- und nginx-Einstellungen.
  • Manuell erstellte und von Plesk generierte Dateien voneinander trennen.
  • Wenn nötig, erstellen Sie die Web-Konfiguration für die relevante Domain nur neu.
tail -n 100 /var/www/vhosts/system/example.com/logs/proxy_error_log plesk repair web example.com -n nginx -t
05
Sichere Lösungsreihenfolge

NGINX 403 Forbidden-Lösungssequenz

Zuerst herausfinden, warum NGINX ablehnt; testiere die Indexe, Berechtigungen, Zugriffsregeln und Sicherheitslayer einzeln.

1

Aufzeichnen Sie die URL und den Client, der die 403-Antwort produziert

Bestimmen Sie, ob der Fehler für alle gilt, oder nur für eine bestimmte IP-Adresse oder Domain.

curl -skI https://example.com/korumali/
2

Klassifizieren Sie die Fehlermeldung im Error-Log.

Verzeichnisindex, Zugriffsverbot oder Access Forbidden gefunden.

tail -n 100 /var/log/nginx/error.log
3

Überprüfen Sie die Dokumentenwurzel und die Indexdatei.

Überprüfen Sie, dass der aktive Serverblock den realen Dateipfad ansieht.

nginx -T | grep -nE 'server_name|root |index '
4

Die Berechtigungs-Kette testen

Ausführungsberechtigung für NGINX-Worker muss in allen übergeordneten Ordnern vorhanden sein.

namei -l /var/www/example/index.php
5

Überprüfen Sie die Zugriffs- und Sicherheitsregeln

Trennen Sie allow/deny-, ACL-, SELinux- und WAF-Protokolle.

nginx -T | grep -nE 'allow |deny '; ausearch -m AVC -ts recent | tail
6

Anwenden Sie die engste Korrektur und bestätigen Sie

Erstellen Sie Änderungen nur an der fehlerhaften Pfad/Regel und überprüfen Sie die neue 403-Einträge.

nginx -t && systemctl reload nginx curl -skI https://example.com/korumali/
06
Unterscheidung nach Symptom

Spezielle Szenarien und Entscheidungsbäume

Verzeichnis wird geöffnet, aber Index fehlt

Fügen Sie die richtige Indexdatei hinzu oder treffen Sie eine bewusste Autoindex-Entscheidung.

ls -la /var/www/example; nginx -T | grep -n 'index '
Nur ein Benutzer/IP wird betroffen.

Überprüfen Sie allow/deny-, WAF- und fail2ban-Protokolle.

nginx -T | grep -nE 'allow |deny '
Symlink hedefinde 403

Die echten Zielrechte und die disable_symlinks-Direktive untersuchen.

readlink -f /var/www/example/current; namei -l /var/www/example/current
Die Rechte sind auf RHEL korrekt, aber es wird eine 403 zurückgegeben.

SELinux AVC-Protokolle und Datei-Kontext sollten überprüft werden.

ls -Zd /var/www/example; ausearch -m AVC -ts recent | tail
WordPress uploads 403

Trennen Sie die Uploads-Eigenalleerschaft, die Hotlink/WAF-Regel und die Ortsumschreibung.

curl -skI https://example.com/wp-content/uploads/test.jpg
Plesk 403 nach Hinzufügen der NGINX-Direktive

Überprüfen Sie den Inhalt der zusätzlichen nginx-Direktiven auf dem Domains-Bildschirm.

plesk repair web example.com -n

Auf keinen Fall

  • Setzen Sie Ordner und Dateien nicht gemeinsam auf 777.
  • SELinux dauerhaft deaktivieren und das Problem verbergen, sollten Sie nicht.
  • Öffnen Sie die Verzeichnisanzeige nicht unnötig auf dem gesamten Server.
  • Mächtet direkte dauerhafte änderungen an den Plesk vhost-Dateien.
  • Nehmen Sie nicht an, dass die Umwandlung von 403 in 404 das Zugriffsproblem löst.

Überprüfung nach der Lösung

  • Erwarteter Index oder Datei gibt 2xx/3xx-Code zurück.
  • Das NGINX-Fehlerprotokoll generiert keine neuen Einträge für verweigerte Berechtigungen.
  • Berechtigungen entsprechen dem Grundsatz der geringsten Privilegierung mindestens.
  • SELinux läuft im Enforce-Modus mit dem richtigen Kontext.
  • Nur die Ziel-IP/Verzeichnis-Zugriffsregel wird angewendet.
07
Offizielle technische Ressourcen

Offizielle Dokumentation von NGINX und zugehörigen Komponenten

08
Interner SEO-Inhaltssatz

Verwandte NGINX-Fehlerlösungen

09
Häufig gestellte Fragen

NGINX 403 Forbidden Kuriositäten über

Warum tritt NGINX 403 Forbidden auf?

Fehlende Indexdatei, falscher Root, Dateiberechtigungen, Eigenalleerschaft, allow/deny-Regeln, SELinux oder Sicherheitslayer sind die häufigsten Ursachen.

Wie kann 'Verzeichnisindex ist verboten' aufgelöst werden?

Stellen Sie zunächst sicher, dass der korrekte Document-Root index.php oder index.html enthält und dass die Index-Direktive diese Datei enthält.

Sollte chmod 777 für 403 verwendet werden?

Nein. Die Sicherheitslücke 777 schafft und versteckt den realen Besitzer/Zugriffschain-Probleme. name, stat und worker-Benutzerkontrolle sollten durchgeführt werden.

Warum werden Berechtigungen trotz korrekter Einstellung auf 403 gesetzt?

SELinux, ACL, allow/deny, WAF, Symlink-Politik oder falsche document root Unix-Rechte können trotz korrekter Einstellung noch einen 403-Fehler erzeugen.

Wie findet man den NGINX worker Benutzer?

Überprüfen Sie die Benutzerrichtlinie in nginx.conf und den Benutzer des laufenden Worker-Prozesses mit der ps-Kommandozeile.

WordPress NGINX 403-Fehler Warum?

Uploads-Berechtigungen, Sicherheits-Plugin, WAF, Hotlink-Regel, verweigerte Standort oder falscher PHP-Skriptpfad.

Wie wird 403 in Plesk behoben?

Überprüfen Sie zunächst die Domain proxy_error_log und zusätzliche NGINX-Direktiven; falls erforderlich, sollte der Befehl plesk repair web für die betreffende Domain verwendet werden.

EKA SOFTWARE- UND INFORMATIONSSYSTEME

Lassen Sie uns den Fehler auf Ihrem Server dauerhaft beheben

Durch die gemeinsame Analyse von cPanel, WHM, CloudLinux, LiteSpeed, MariaDB, Exim und Sicherheitsebenen beheben wir die Grundursache des Fehlers, anstatt nur den Dienst zu entfernen.

Holen Sie sich Server-Support WhatsApp
Top