it-swarm.dev

500 Internal Server Error beim Versuch, ErrorDocument zur Bearbeitung von Anforderungen zu verwenden

Ich habe diese .htaccess-Datei:

Options -Indexes
RewriteEngine on

ErrorDocument 404 /404.php

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^([^/]*)/?(.*)$ ./$1.php

RewriteCond %{THE_REQUEST} \.php
RewriteRule ^(.*)$ - [L,R=404]

Wenn ich jedoch zu localhost/example.php gehe, wird ein 500-Server-Serverfehler ausgegeben.

Hilfe bitte? Vielen Dank.

BEARBEITEN:

Die vollständige Fehlermeldung lautet:

Not Found

The requested URL /example.php was not found on this server.

Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.
10
user3130907

Sie erhalten höchstwahrscheinlich 500 aufgrund eines Schleifenfehlers.

404.php von der letzten Regel ausschließen als:

ErrorDocument 404 /404.php

Options -Indexes -MultiViews
RewriteEngine on

RewriteCond %{THE_REQUEST} \.php [NC]
RewriteRule ^(?!404\.php)$ - [L,NC,R=404]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^([^/]+)/?(.*)$ ./$1.php [L]
5
anubhava

ist 404.php tatsächlich im Stammverzeichnis Ihres Dateisystems enthalten?

Ich vermute nicht.

Versuchen Sie etwas wie ../404.php

BTW: Haben Sie in Ihren Apache-Protokolldateien nachgesehen? 

3
nl-x

Da Sie die .php-Erweiterung auf Ihren Seiten ausblenden möchten, versuchen Sie, diese Erweiterung aus der .htaccess-Datei zu entfernen, indem Sie folgendermaßen vorgehen:

Änderung: ErrorDocument 404/404.php in ErrorDocument 404/404

Hoffe das hilft.

JJ

0
user4483327