Ich habe ein Projekt zur Hand, aber es ist ein Fehler aufgetreten.404 Fehler wird nicht angezeigt, wie es sein sollte
Ich habe RewriteRule zum Umleiten index.php?view=$1
zu /
. Wenn ich jedoch auf eine URL zugreife, die zu einem 404-Fehler führen soll, wird stattdessen die Homepage (index.php) angezeigt.
ErrorDocument 404 /pages/errors/error_redirect.php
ErrorDocument 500 /pages/errors/error_redirect.php
Options +FollowSymlinks
RewriteEngine On
RewriteBase/
<FilesMatch "\.tpl$">
Order Allow,Deny
Deny from all
</FilesMatch>
RewriteCond %{REQUEST_URI} ^/404/$
RewriteRule ^(.*)$ /pages/errors/404.php [L]
RewriteCond %{REQUEST_URI} ^/500/$
RewriteRule ^(.*)$ /pages/errors/500.php [L]
RewriteCond %{REQUEST_FILENAME} !-l
# Rewrite all URLs to non-extension URLs
RewriteRule ^(admin|user)($|/) - [L]
RewriteRule ^([A-Za-z0-9-_]+)$ /index.php?view=$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php [L]
Das Problem, das ich bin vor, dass, wenn ich http://localhost/asdasdads
eingegeben, der Browser mich http://localhost/
führte stattdessen mit unveränderter URL im Browser aber Browser angezeigt index.php. Es sollte eine 404-Fehlerseite angezeigt werden.
Ich glaube, RewriteRule ^([A-Za-z0-9-_]+)$ /index.php?view=$1 [L]
ist die Wurzel dieses Problems. Es wird /index.php?view=asdasdads
zu /index.php?view=
umgeleitet, weil es nicht gefunden wird. Ich möchte, dass es stattdessen zu 404 umleitet.
Vielen Dank im Voraus.