HTAccess Noob: mod_rewrite Problem mit relativen Pfaden

Hallo liebe Community,

um meine dynamisch erstellten Seiten Suchmaschinen-freundlicher zu gestalten  versuche ich nun die langen Querystrings mittels mod_rewrite zu ersetzen. Funktioniert auch wunderbar, aber ich habe noch folgendes Problem:

Meine HTAccess wandelt (wie gewünscht) meine URLs um:

"url.de/Thema/Seite" zu "url.de/index.php?va=Thema&vb=Seite"

Mein Problem jedoch dabei ist, dass wenn ich zB Bilder oder Links in meiner Index.php im Root verzeichnis mittels relative Pfade einbinden möchte, bindet der Server in die relative URL den Abschnitt "Thema" mit ein. Beispiel aus index.php:

<a href="./static/impressum.php">Impressum</a>

Nach Aufruf von Seite "url.de/Thema/Seite" wird mein Link auf die Seite "./static/impressum.php" zu "./Thema/static/impressum.php"

Gibt es eine Möglichkeit dieses Verhalten in der htaccess Datei zu unterbinden, sodass ich nicht meinen kompletten Quellcode überarbeiten muss? Ich hoffe ich konnte mich verständlich ausdrücken, schon mal vielen Dank für eure Mühe und Zeit

Mit freundlichen Grüßen

  1. Hi,

    Mein Problem jedoch dabei ist, dass wenn ich zB Bilder oder Links in meiner Index.php im Root verzeichnis mittels relative Pfade einbinden möchte, bindet der Server in die relative URL den Abschnitt "Thema" mit ein.

    Nein, macht er nicht.
    Der *Client* vervollständigt relative Pfadangaben.

    Gibt es eine Möglichkeit dieses Verhalten in der htaccess Datei zu unterbinden, sodass ich nicht meinen kompletten Quellcode überarbeiten muss?

    Nein, .htaccess konfiguriert nicht den Client.

    Das Base-Element zu nutzen, wäre eine Möglichkeit (aber nicht die, die ich empfelen würde); oder die Pfade relativ zur Domainwurzel anzugeben.

    MfG ChrisB

    --
    RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
  2. Hi,

    Nach Aufruf von Seite "url.de/Thema/Seite" wird mein Link auf die Seite "./static/impressum.php" zu "./Thema/static/impressum.php"

    Gibt es eine Möglichkeit dieses Verhalten in der htaccess Datei zu unterbinden, sodass ich nicht meinen kompletten Quellcode überarbeiten muss? Ich hoffe ich konnte mich verständlich ausdrücken, schon mal vielen Dank für eure Mühe und Zeit

    Wenn ich dich richtig verstehe suchst du vielleicht <http://de.selfhtml.org/html/referenz/attribute.htm#base@title=<base>>, oder?

    Das kommt zwar nicht in die htaccess, sondern in den HEAD-Bereich der jeweiligen Seiten, sollte dein Problem aber ohne viele Schwierigkeiten lösen.

    Gruß
    Alex

    1. Danke für die Hilfe! Das <base> Tag löst alle meine Probleme ;-) Manchmal erkennt man den Wald vor lauten Bäumen nicht...

      Vielen Dank!

      MFG