Digital Döner: mod_rewrite - Absolute Links

Ich verfolge jetzt dieses Forum seit ein paar Tagen und eigentlich weiss ich schon, was jetzt als Antwort kommt: Schau bei google nach, auf apache.org gibt es eine Anleitung oder im Archiv von 1998 gibt es blablabla. Wirklich, habe seit Tagen diese Quellen geprüft, doch so richtig schlau bin ich nicht geworden. Vielleicht kann mir jemand kurz einen Tipp geben.

Schlüssel mit mod_rewrite ein PHP-Aufruf um. Das funktioniert soweit auch ganz gut. Doch sobald ich das mache, sind die relativen Links zum Nachladen von Grafikbestandteilen defekt. Positioniere ich sie absolut (mit http://blablabla), klappt alles einwandfrei. Kann aber nicht im Sinne des Erfinders sein, oder?

  1. hallo,

    Ich verfolge jetzt dieses Forum seit ein paar Tagen und eigentlich weiss ich schon, was jetzt als Antwort kommt: Schau bei google nach, auf apache.org gibt es eine Anleitung oder im Archiv von 1998 gibt es blablabla.

    Gar nicht nötig. Lies dir das aktuelle Forum durch, da gibt es bereits zwei Threads zu mod_rewrite.

    Schlüssel mit mod_rewrite ein PHP-Aufruf um. Das funktioniert soweit auch ganz gut.

    Dann ist es doch prima.

    Doch sobald ich das mache, sind die relativen Links zum Nachladen von Grafikbestandteilen defekt. Positioniere ich sie absolut (mit http://blablabla), klappt alles einwandfrei. Kann aber nicht im Sinne des Erfinders sein, oder?

    Doch, natürlich. Es sei denn, auf der Adresse, zu der du umleitest, besteht exakt dieselbe Verzeichnis- und Dateistruktur. Relative links, die auf einer URL korrekte Ergebnisse liefern, müssen nicht zwangsläufig auf einer anderen dasselbe tun.

    Grüße aus Berlin

    Christoph S.

    1. @Christoph S.

      Danke für Deine Antwort. Genau das ist mein Problem. Ich schlüssel nur die Werte zur index.php um. Liegt im Root.
      Lese ich in der index.php die Grafiken ein
      <p><img border="0" src="images/618.jpg"></p>
      bekomme ich einen broken link.

      Lese ich absolut ein
      <p><img border="0" src="http://www.blablaschnitzel.de/images/618.jpg"></p>
      klappt es.

      Doch sobald ich das mache, sind die relativen Links zum Nachladen von Grafikbestandteilen defekt. Positioniere ich sie absolut (mit http://blablabla), klappt alles einwandfrei. Kann aber nicht im Sinne des Erfinders sein, oder?
      Doch, natürlich. Es sei denn, auf der Adresse, zu der du umleitest, besteht exakt dieselbe Verzeichnis- und Dateistruktur. Relative links, die auf einer URL korrekte Ergebnisse liefern, müssen nicht zwangsläufig auf einer anderen dasselbe tun.

      Grüße aus Berlin

      Christoph S.

      1. Hallo,

        Danke für Deine Antwort. Genau das ist mein Problem. Ich schlüssel nur die Werte zur index.php um. Liegt im Root.

        Wenn Du mod_rewrite verwendest und nur einen internen Redirect machst, (so wie jetzt) dann kann es Dir egal sein, wo genau die index.php liegt. Der Browser weiß davon ja gar nichts, darum geht es ja bei mod_rewrite.

        Ergo: Wenn Du http://www.example.org/a/b/c/d nach http://www.example.org/index.php?s1=a&s2=b&s3=c&s4=d weiterleiten würdest, dann kann es dem Browser vollkommen egal sein, dass die index.php im Root liegt, er kennt *NUR* die URL http://www.example.org/a/b/c/d. Und von http://www.example.org/a/b/c/d hast Du (wie Du auch in http://selfhtml.teamone.de/html/allgemein/referenzieren.htm nachlesen kannst) drei Möglichkeiten, auf z.B. http://www.example.org/images/blub.jpg zu kommen:

        a) per absolutem URL: http://www.example.org/images/blub.jpg
        b) per absolutem Pfad relativ zum Basis-URL: /images/blub.jpg
        c) per relativem Pfad relativ zum Basis-URL: ../../../images/blub.jpg

        Achtung! Wenn Du Dich in http://www.example.org/a/b/c/d/ befändest, (also ein Schrägstrich hinten dran mehr) dann müsstest Du für c) ../../../../images/blub.jpg angeben, also mit 4 und nicht 3 Referenzen auf das übergeordnete Verzeichnis.

        Viele Grüße,
        Christian

  2. Moin!

    Ich verfolge jetzt dieses Forum seit ein paar Tagen und eigentlich weiss ich schon, was jetzt als Antwort kommt: Schau bei google nach, auf apache.org gibt es eine Anleitung oder im Archiv von 1998 gibt es blablabla. Wirklich, habe seit Tagen diese Quellen geprüft, doch so richtig schlau bin ich nicht geworden. Vielleicht kann mir jemand kurz einen Tipp geben.

    Hm, ein "Lies die </faq/>" fehlt in deiner Auflistung noch. Dann hättest du nämlich </faq/#Q-07b> gefunden.

    Jetzt bleibt nämlich eigentlich nur die Aussage: "Funktioniert nicht" funktioniert nicht.

    Schlüssel mit mod_rewrite ein PHP-Aufruf um. Das funktioniert soweit auch ganz gut. Doch sobald ich das mache, sind die relativen Links zum Nachladen von Grafikbestandteilen defekt. Positioniere ich sie absolut (mit http://blablabla), klappt alles einwandfrei. Kann aber nicht im Sinne des Erfinders sein, oder?

    Vermutlich kriegst du einige Dinge durcheinander.

    Mach mal eine Tabelle: Welche URL weiß der Browser von der Seite? In welche URL wird die intern umgesetzt? Und welche URLs konstruiert sich der Browser _ausgehend von der ihm bekannten URL_, um auf Bilder zuzugreifen? Wird diese URL auch umgeschrieben? Gibts dann an der Position die Bilder?

    - Sven Rautenberg

    --
    SELFTREFFEN 2003 - http://selftreffen.kuemmi.ch/
    ss:) zu:) ls:[ fo:} de:] va:) ch:] sh:) n4:# rl:| br:< js:| ie:( fl:( mo:|