marcod
Themenersteller
Projectleader
Neuling (1 Beiträge)

htaccess generiert Endlosschleife

am 04.07.2013, 23:09 Uhr eröffnete marcod folgenden Thread
.htaccess    1593 mal gelesen    1 Antwort(en).

Hallo zusammen

Mein erster Post hier, habe aber schon einiges gelesen hier
Ich habe ein Problem mit der htaccess Datei welche bei mir nicht funktioniert. Eigentlich habe ich nun sehr viel gelesen darüber und ich meinte die Zeilen richtig formuliert zu haben. Jedoch ist danach nichts mehr erreichbar und es scheint in einer Endlosschleife zu enden.
Hintergrund:
Ich möchte dass alle vorhandenen Dateien direkt aufgerufen werden können (da ja css|jpg|pdf etc. verfügbar sein sollen). Ist eine Datei nicht verfügbar soll die index.php/?geturl=$1 aufgerufen werden in welcher ich danach die Seiten zuweise oder einen 404 zurückgebe.
Der Code sieht folgendermassen aus:


RewriteEngine on
RewriteCond %{REQUEST_URI} !^.*index\.php$ [OR]
RewriteCond %{REQUEST_URI} !^.*404\.html$ [OR]
RewriteCond %{REQUESTFILENAME} !-d [OR]
RewriteCond %{REQUESTFILENAME} !-f
RewriteRule ^(.*)$ index.php?geturl=$1 [L]


Ich bin um jeden Kommentar dankbar!
Grüsse


joerg
Avatar joerg
Fachinformatiker Anwendungsentwicklung
Content Gott (1941 Beiträge)
am 05.07.2013, 00:23 Uhr schrieb joerg

Hallo

Im Prinzip ist der Gedanke ja nicht schlecht aber dann habe ich die Möglichkeit immer noch mit der index.php Datei etwas zu versuchen. Beziehungsweise bei deiner ersten Zeile wird alles was auf index.php endet nicht durch das Framework geleitet.

Warum eine extra HTML Fehlerseite? Bedeutet die Fehlerseite dann im header oder footer dann auch immer wieder anzupassen. Also besser auch durch das Framework leiten.

Reine Verzeichnisse in denen sich die Bilder Dateien oder so befinden würde ich auch durch das Framework schleusen, damit die dadurch auch nicht aufrufbar sind.

ErrorDocument 404 /sicher/datei.php?x=404
<IfModule mod_rewrite.c>
RewriteEngine on
# Alle Dateien die mit einem Punkt anfangen sind nicht aufrufbar und werden mit einen 403 beantwortet
RewriteCond %{REQUEST_URI} ^(.*/)?\\.
RewriteRule ^(.*) - [F]
#Alle Verzeichnisse die wirklich existent sind sind dann nicht mehr vorhanden und alle vorhandenen Dateien in diesen Verzeichnissen
RewriteRule ^(verzeichnis1|verzeichnis2|verzeichnis3)(.+)$ /sicher/datei.php?x=404 [L]
#Alle Dateien die nicht vorhanden sind werden durch die Eingangs PHP Datei geschleust
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /sicher/datei.php?x=/$1 [L,QSA]
</IfModule>

Was deinen Kode angeht ich würde mal die ganzen Oder da rauswerfen. Wahrscheinlich funktioniert er dann bereits. In der Hoffnung das du nach diesem Post das Ganze eh nochmal durchdenkst.

Gruß
Jörg


Zufällige Umleitung zu der Startseite einer meiner Domains
Meine ungewöhnlichen Tools

  • 1


« zurück zu: .htaccess

Das Seitenreport Forum hat aktuell 5267 Themen und 36089 Beiträge.
Insgesamt sind 48172 Mitglieder registriert.