Da wir schon länger nichts zu Apache und so hatten, mal ein kleiner Beitrag.
Ich wollte eine PHP-Applikation für den Rest der Welt so gut es geht verstecken.
In VHost selbst ist der Zugriff auf das Verzeichnis nur von einer bestimmten IP erlaubt. Alle andere erhalten eine 403-Fehlermeldung (Zugriff verboten).
Ich wollte aber ganz gerne, das diese Leute eine 404-Meldung bekommen, damit man gar nicht merkt, das hinter dieser URL besagte Applikation steckt.
Dies erledigt folgender Anweisungsblock:
Wenn die IP, nicht der einzig zugelassenen entspricht und die URI /phpmyadmin/ ist, dann änder die URL nicht (hier wird /phpmyadmin/ durch /phpmyadmin/ ersetzt..) und sende den Statuscode 404.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REMOTE_ADDR} !^ip.ip.ip.ip$
RewriteCond %{REQUEST_URI} ^/phpmyadmin/$
RewriteRule ^/phpmyadmin/$ ^/phpmyadmin/$ [R=404]
</IfModule>
Tags: apache, mod_rewrite