Apache 404 schlägt mit /boot.ini%2500.htm fehl

Apache 404 schlägt mit /boot.ini%2500.htm fehl

Aus irgendeinem Grund die folgende htaccessWilleWeiterleitung auf eine 404-Seite, wenn die getestete URL /boot.ini.htmabernichtwenn es so ist /boot.ini%2500.htm.

Was muss ich ändern, damit dies funktioniert, oder ist das ein Fehler?

Options All -Indexes
Options +FollowSymlinks

ErrorDocument 403 /site/404
ErrorDocument 404 /site/404

RewriteEngine On

RewriteRule ^(fonts)($|/) - [L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([\s\S]*)$ index.php/$1 [L,NC,QSA]

# Ensure Authorization header is passed along
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

ServerSignature Off

php_value memory_limit 256M

Mein Server ist:

Serverversion: Apache/2.4.41 (Ubuntu)

Server erstellt: 2021-06-17T18:27:53

Antwort1

In allen Fällen wird die standardmäßige Apache 404-Antwort angezeigt.

In diesem Fall wird die Anfrage mit Sicherheit nicht von Codeigniter verarbeitet. Es sieht so aus, als ob die 404-Meldung vom Apache-Server ausgelöst wird, bevor sie .htaccessüberhaupt verarbeitet wird. Dies wird sehr wahrscheinlich durch etwas wie mod_security ausgelöst (es könnte einen Hinweis in den HTTP-Antwortheadern geben).

URLs, die Folgendes enthalten, %können möglicherweise ein Sicherheitsrisiko darstellen. Daher wäre es nicht unbedingt ungewöhnlich, eine allgemeine Regel auf dem Server zu haben, die diese Anfragen einfach blockiert. Sofern Sie nicht in irgendeiner Form Zugriff auf die Serverkonfiguration haben, ist es unwahrscheinlich, dass Sie etwas tun können, um dies zu beeinflussen.

Aber es wird bereits eine 404-Fehlermeldung zurückgegeben. Und eine 404-Fehlermeldung ist schließlich eine 404-Fehlermeldung, also wird es für Bots keinen Unterschied machen. UndrealBenutzer sollten solche Anfragen ohnehin nie stellen.

verwandte Informationen