mod_rewrite doppel rewrite Problem(htaccess)
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
aufruf
ausgeben
bisheriger code
code
datei
direkte aufrufen
domain
erlauben
globale index
index
intern weiterleiten
leiten
page
pfad
status
test
variable setzen
verhindern
zugriff
-
Hi,
ich wollte bei einer Website alle Seiten über eine globale index.php leiten, welche
dann die entsprechende Seite ausgibt.
Gleichzeitig wollte ich aber auch das direkte Aufrufen der PHP-Dateien verhindern.
D.h.: test.de/abc.html soll intern auf index.php?page=abc umgeleitet werden, aber
test.de/index.php?page=abc soll ein Forbidden ausgeben
Mein bisheriger Code sieht so aus, doch er blockt trotz [L] jede Website:
RewriteEngine on RewriteRule ^(.*)\.html$ index.php?page=$1 [L] RewriteRule ^.*\.php index.php [F]
Gruß pueschel -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
hi,
du könntest den redirect-status prüfen oder aber zb auch selbst eine environment-variable setzen um deinen aufruf von "intern" zu erlauben, alle andern aber zu verbieten... :
# seiten (intern) weiterleiten RewriteCond %{REQUEST_URI} ^/(([a-z0-9-]+)/){0,3}(index\.html)?$ [NC] RewriteRule ^(.*)$ /pfad/pfad/sub.domain.tld/inc/index.php [E=VON:INTERN,L] # zugriff auf inc verbieten wenn nicht von hier weitergeleitet wurde RewriteCond %{REQUEST_URI} ^/inc/ [NC] RewriteCond %{ENV:REDIRECT_VON} !INTERN RewriteRule ^(.*)$ - [F,L]
Beitrag zuletzt geändert: 10.2.2013 15:05:11 von hcms -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage