Apache 2.4-Zugriffskontrolle verwendet die `Require`-Direktive. Empfindliche Dateien, Backups und Upload-Ordner-Ausführungserweiterungen können selektiv blockiert werden; IP-Zulassungsliste sollte nicht ohne ordnungsgemäße Konfiguration der realen Client-IP hinter Reverse-Proxy/Cloudflare angewendet werden
403 Forbidden
Require all denied
client denied by server configuration
AH01630: client denied
Directory index forbiddenApache 2.4-Zugriffskontrolle verwendet die `Require`-Direktive. Empfindliche Dateien, Backups und Upload-Ordner-Ausführungserweiterungen können selektiv blockiert werden; IP-Zulassungsliste sollte nicht ohne ordnungsgemäße Konfiguration der realen Client-IP hinter Reverse-Proxy/Cloudflare angewendet werden
Erwarten Sie kein „.htaccess“-Ergebnis, ohne die Apache-, LiteSpeed-, Plesk-Proxy- oder NGINX-only-Struktur zu reservieren.
Sichern Sie die aktuelle Datei mit dem Datum; Suchen Sie die Anweisung und Zeile im Apache/LiteSpeed-Fehlerprotokoll.
Ändern Sie die Umleitungs-, Rewrite-, Header- und Zugriffsregeln nicht gleichzeitig.
Messen Sie Status, Standort, Inhaltstyp und Weiterleitungsanzahl mit Curl und überprüfen Sie die Cache-Ebenen separat.
Verwenden Sie `Require all denied` nicht bedingungslos im Website-Root.
Bedeutung: Die sensible Konfigurationsdatei ist über das Web erreichbar.
Mögliche Ursache: Keine Zugriffsregeln vorhanden oder der Server ist rein NGINX-basiert.
Bedeutung: Die hochgeladene schädliche Datei ist ausführbar.
Mögliche Ursache: Skript-Ausführung ist im Upload-Verzeichnis aktiviert.
Bedeutung: Die Regel befindet sich im falschen Verzeichnis oder verwendet einen zu breiten FilesMatch.
Mögliche Ursache: Scope-Fehler.
Bedeutung: Apache sieht Proxy-IP.
Mögliche Ursache: Keine mod_remoteip- oder Trusted-Proxy-Konfiguration.
Bedeutung: Die Origin-Zugriffsregel ist mit Cloudflare-IPs inkompatibel.
Mögliche Ursache: Die Remote-IP ist falsch.
Bedeutung: Die Options-Override-Berechtigung ist deaktiviert.
Mögliche Ursache: AllowOverride Options yok.
Bedeutung: Order/Deny/Allow-Altlast-Syntax.
Mögliche Ursache: Apache 2.4-Migration.
Bedeutung: Die geschützte Datei wird erfolgreich blockiert.
Mögliche Ursache: Require/FilesMatch hat zugetroffen.
Es wurden keine Datensätze gefunden, die diesem Ausdruck entsprechen.
for p in .env .git/config backup.zip database.sql error.log; do curl -sS -o /dev/null -w "$p %{http_code}\n" "https://example.com/$p"; donePrüft den HTTP-Status gängiger sensibler Dateien.
curl -sL https://example.com/uploads/ | head -n 30Zeigt, ob eine Verzeichnisauflistung für ein Verzeichnis ohne Indexdatei angezeigt wird.
find uploads -type f \( -iname '*.php' -o -iname '*.phtml' -o -iname '*.phar' -o -iname '*.php*' \) -printListet ausführbare PHP-ähnliche Dateien im Upload-Verzeichnis auf.
grep -RniE 'Require|FilesMatch|Files>|Options -Indexes|Order|Deny|Allow' . --include='.htaccess' | head -n 120Findet alle Zugriffsregeln in Unterverzeichnissen.
curl -sSI https://example.com/ip-test | grep -iE '^server:|^cf-connecting-ip:|^x-forwarded-for:|^x-real-ip:'Prüft Proxy-/CDN-Markierungen; die Origin-Anwendung muss separat protokolliert werden.
tail -n 100 /var/log/apache2/access.log 2>/dev/null || tail -n 100 /usr/local/apache/domlogs/example.com 2>/dev/null || tail -n 100 /var/log/httpd/access_log403 und Client-IP-Aufzeichnungen werden angezeigt.
<FilesMatch ".*">
Require all denied
</FilesMatch><FilesMatch "(?i)^(?:\.env|\.git|.*\.(?:sql|log|bak|ini|zip))$">
Require all denied
</FilesMatch>Require all denied<FilesMatch "(?i)\.(?:php[0-9]?|phtml|phar)$">
Require all denied
</FilesMatch>Require ip %{HTTP:X-Forwarded-For}<RequireAny>
Require ip 203.0.113.10
Require ip 198.51.100.0/24
</RequireAny>IndexIgnore *Options -IndexesDie Direktiven FilesMatch, Require und Options funktionieren mit der entsprechenden AllowOverride-Klasse.
IP-Regeln können die Proxy-IP statt der echten Client-IP sehen.
Konfigurations-, Log-, Sicherungs- und Upload-Verzeichnisse sollten ohne Beeinträchtigung des Anwendungszugriffs geschützt werden
Nein. NGINX liest keine `.htaccess`-Dateien. Die Regel muss in eine `server`- oder `location`-Konfiguration übersetzt werden.
In der Regel nicht; Apache wertet die `.htaccess`-Datei bei jeder Anfrage aus. Für Änderungen am VirtualHost, an Modulen oder an AllowOverride ist jedoch ein Reload/Restart erforderlich.
Es sollte eine datierte Sicherung der vorhandenen Datei erstellt, das aktive Document Root überprüft und die Änderung in der Staging-Umgebung oder zu verkehrsschwachen Zeiten getestet werden.
In cPanel befindet es sich meist in `public_html`, in Plesk in `httpdocs`; Addon-Domains und Subdomains können ein anderes Document Root haben.
LiteSpeed unterstützt die meisten Regeln durch Apache-Kompatibilität; einige Modul- und Handler-Verhaltensweisen können abweichen.
Vollständige Direktive und Zeilenrekord im Apache/LiteSpeed-Fehlerprotokoll. Die Datei sollte gemäß dem Protokoll wiederhergestellt werden, anstatt sie zufällig zu löschen.
Domain sollte nicht direkt ohne Überprüfung von Domain, Dokumentenwurzel, Proxy, WordPress und Serverstruktur hinzugefügt werden. Beispiele sollten angepasst und getestet werden.
Wir untersuchen Umleitungs-, Umschreibe-, CORS-, Zugriffs- und 500 -Fehler mit Protokollen in cPanel-, Plesk-, LiteSpeed-, WordPress-, benutzerdefinierten PHP- und WISECP-Strukturen.