[mod_rewrite] Verzeichnissproblem

chrissel

Woohooo!
ID: 211634
L
20 April 2006
4.489
472
[@Mods: Ich hoffe dies ist das richtige Forum, wenn nicht -> Verschieben]

Ich habe ein Problem, undzwar sieht meine .htaccess so aus:

#ModRewrite
RewriteEngine On

# Rule Fuer die Module
RewriteRule ^(.*)(\.html?)$ index.php?s=$1 [L]
Die index.php included dann halt die Datei die per 's' übermittelt wird!
Leider klappt es nicht so ganz wenn ich dann z.b. Aufrufe:
MEINESEITE/ordner/datei.html
ladet der die ganzen Javascripts/Grafiken/CSS etc. nicht mehr!

Wie schalte ich das Problem aus?
 
Wie schalte ich das Problem aus?
Is ja logisch, was passiert.

Dein Beispiel:
MEINESEITE/ordner/datei.html wird zu MEINESEITE/index.php?s=ordner/datei

Wenn diese .html-Datei jetzt im Code beispielsweise das hat:
HTML:
<script src="javascript.js" ></script>
würde das normalerweise MEINESEITE/ordner/javascript.js einbinden. Durch mod_rewrite bist du nun aber im Verzeichnis / und der Pfad lautet MEINESEITE/javascript.js, der natürlich falsch ist.

Entweder musst du alles ummappen (nicht gut), alle Dateien nach / werfen (auch nicht gut), überlegen, ob so ein Frontcontroller wirklich gut ist, wie du dein Script angelegt hast oder die entsprechenden Pfade nicht relativ, sondern absolut machen (in diesem Fall die einfachste Lösung).
 
Normalerweise überlegt man sich ja auch vorher, wie man sein Script aufbaut, damit man eben mit einer grundliegenden Änderung nicht gleich alles neuschreiben muss ;)
 
Ich versteh eh den Sinn ned - also rein sumo-technisch gesehen.

Du hast doch schon schöne .html-Dateien mit Verzeichnisstruktur. Warum willst du die jetzt alle umkrempeln ? Oder stecken da alles nur statische Seiten dahinter ? Wenn ja, kannst du da ja ansetzen.
 
LOL wenn es dir zu viele Links sind die Du ändern müsstest, was aber net geht weil du keine/Ordnerstrucktur/haben kannst, ist albern es deswegen zu lassen. Wenn es durchaus einen Sinn hat kann man auf - ~ # , ; : als trenner nehemen.