Kalle_B: Zwei Domains auf einem Server - gemeinsame Bilder

Hallöle,

in meinen PHP- Programmen habe ich Projektkonstanten in eine include- Datei ausgelagert. Zum Beispiel die relative Pfadadresse für Bilder:
./img/

Das funktioniert für PHP- Programme (schreiben, löschen, lesen, ...) gut und auch für den Browser, der die Bilder laden muss.

Nun habe ich zu der .de eine .eu Domain bekommen. Auf die .eu Domain kopiere ich die PHP- Programme, aber die Bilder werden in beiden Domains von Benutzern hochgeladen, und sollen weiterhin im .de bleiben:

xxx.de

  • public_html
    • img

xxx.eu

  • public.html

Wenn ich im xxx.eu (public.html) Bereich bin, seztze ich die Projketkonstante für Bilder auf
../../xxx.de/public.html/img/
und kann per PHP zugreifen.

Aber wenn der Pfad an den Browser ausgegeben wird, sieht die Bild-Url so aus:
http://xxx.eu/xxx.de/public_html/img/pic4314_0_b3dcb265.jpg
und führt natürlich nicht zum Laden des Bildes.

Mit der PHP- Pfadangabe
http://xxx.de/img/
kann aber PHP nichts anfangen. Sämtliche Bilder sind nicht sichtbar.

Ich möchte jetzt nicht die Programmlogik ändern. Gibt es einen Ausweg?

Lieben Gruß,
Kalle

  1. Ich würde einfach einen symbolischen Link im Verzeichnis der zweiten Domain auf das Bilderverzeichnis der ersten Domain anlegen. - Zumindest wenn beide Domainverzeichnisse innerhalb desselben Webspace lieben.

    Einfach mal in der Shell (auf einem Unix-Server)
    man ln
    eingeben...

    1. Ich würde einfach einen symbolischen Link im Verzeichnis der zweiten Domain auf das Bilderverzeichnis der ersten Domain anlegen. - Zumindest wenn beide Domainverzeichnisse innerhalb desselben Webspace lieben.

      Joop, das funzt, die lieben sich wirklich. Danke dir.

      Gruß, Kalle

  2. Aber wenn der Pfad an den Browser ausgegeben wird, sieht die Bild-Url so aus:
    http://xxx.eu/xxx.de/public_html/img/pic4314_0_b3dcb265.jpg

    Der Browser versucht also den Pfad
    ../../xxx.de/public.html/img/pic4314_0_b3dcb265.jpg
    mit dem gegenwärtigen URL
    http://xxx.eu/public_html
    zu normalisieren.
    er wendet
    ../ an
    http://xxx.eu/
    er wendet
    ../ an
    http://xxx.eu/
    und hängt den Rest an
    http://xxx.eu/xxx.de/public_html/img/pic4314_0_b3dcb265.jpg

    Dein Fehler liegt darin zu glauben, dass Browser auch über Domains hinweg normalisieren. Das können Sie nicht.
    Du musst dem Bowser schon die absolute neue Domain nennen durch eine absolute url.

    mfg Beat

    --
    ><o(((°>           ><o(((°>
       <°)))o><                     ><o(((°>o
    Der Valigator leibt diese Fische