Ich möchte ein benutzerdefiniertes 404-Fehlerdokument festlegen, aber ich habe ein Problem damit!Apache "Datei nicht gefunden." anstelle von 404. Fehlerdokument
Zuerst habe ich zwei RewriteRules in meinem .htaccess:
RewriteRule ^([^/.]+)/([^/.]+)/([^/.]+)/?$ /$2/$3.php?lang=$1 [L]
RewriteRule ^([^/.]+)/([^/.]+)/([^/.]+)/([^/.]+)/?$ /$2/$3/$4.php?lang=$1 [L]
Also meine URL wie folgt aussieht:/de-de/page/other/stuff und opend /page/other/stuff.php?lang = de-de
Jetzt ist es Zeit, meine eigenen Fehler Dokument zu setzen: Errordocument 404 /404.php
Wenn es einen Fehler in "/ de-de/page/other /" zum Beispiel "ist/de-de/false/Seite/"Ich habe das Fehlerdokument erfolgreich bekommen. Aber wenn es einen Fehler im Namen der PHP-Datei gibt (zum Beispiel "falsches Zeug" anstelle von "Zeug"), bekomme ich nur die Meldung "Datei nicht gefunden". aber nicht mein Fehlerdokument.
Was ist los? Was kann ich tun, um es zu beheben?
Danke für Ihre Hilfe!
AuthType Basic
AuthName "Password Protected Area"
AuthUserFile /var/www/vhosts/<domain>/development/tests/demo.<domain>/.htpasswd
Require valid-user
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R,QSA]
</IfModule>
RewriteRule ^([^/.]+)/([^/.]+)/([^/.]+)/?$ /$2/$3.php?lang=$1 [L]
RewriteRule ^([^/.]+)/([^/.]+)/([^/.]+)/([^/.]+)/?$ /$2/$3/$4.php?lang=$1 [L]
ErrorDocument 404 /404.php
Apache Error Log:
[404] GET /de-de/support/support/fdfssdf HTTP/1.0
AH01071: Got error 'Primary script unknown\n'