Nick: Root-Dir von Sub-Domains?

Hallo.

Ich wollte meine Heimseite um einen Teil erweitern, und habe einen neuen Ordner angelegt, und für diesen eine Subdomain. (Also ich habe den neuen Ordner als Ziel für diese Subdomain festgelegt.

Nun habe ich angefangen die Seiten für diesen neuen Teil zu erstellen, musste aber leider festellen, dass das referenzieren nicht mehr funktioniert, wenn ich Dateien meines Hauptprojekts benutzen will.
Das ist aber NUR wenn ich die Subdomain ansteuere.
Also alle Images sind "broken" wenn ich

http://neuerordner.mein-name.de/index.html

ansteuere. Und wenn ich

http://www.mein-name.de/neuerordner/index.html ansteuere,

funktionieren alle referenzierten Dateien.

Ich meine, es ist ja nicht so für den neuen Teil meiner Webseite nun mit ganzen Urls referenzieren zu müssen, aber ich war es bisher immer minimalistisch gewohnt, also mit ../../ordner/ordner/datei.xzy
Ausserdem, ist es mit ganzen Urls glaub ich langsamer.

Also gibt es eine Möglichkeit?

danke

  1. Moin!

    Nun habe ich angefangen die Seiten für diesen neuen Teil zu erstellen, musste aber leider festellen, dass das referenzieren nicht mehr funktioniert, wenn ich Dateien meines Hauptprojekts benutzen will.

    Logisch. Eine Subdomain wirkt wie ein komplett anderer Server. Tatsächlich ist er das auch, zumindest URL-logisch gesehen.

    Du kannst, auch wenn du noch soviele "../" in deine relativen URLs machst, keinesfalls höher in der URL-Verzeichnisstruktur aufsteigen, als bis "subdomain.sld.tld/".

    Diese URL entspricht deinem "neuerordner/".

    Wenn du unterhalb (also Richtung "..") dieses Ordners Bilder hast, dann sind die über die Subdomain nicht erreichbar. Wenn du die Bilder von deiner Hauptdomain aus einbinden willst, müssen sie ALLE die komplette Gesamturl haben, also angefangen bei "http://".

    Alternativ kannst du natürlich dafür sorgen, dass die Bilder URL-mäßig in deiner Subdomain auftauchen. Mehrere Taktiken bieten sich da an.

    1. Einen symbolischen Link im Dateisystem anlegen, so dass die Bilder beispielsweise unter "www.sld.tld/images" und "subdomain.sld.tld/images" erreichbar sind.

    2. Einen Alias anlegen, der im Prinzip dasselbe bewirkt. Siehe http://httpd.apache.org/docs/mod/mod_alias.html#alias. Funktioniert aber nur, wenn du Zugriff auf die httpd.conf hast, geht nicht per .htaccess (das wäre ein Super-Sicherheitsrisiko).

    3. Du kopierst die Bilder im Dateisystem und hast alles doppelt auf der Platte (kostet doppelten Webspace).

    Ausserdem, ist es mit ganzen Urls glaub ich langsamer.

    Nur etwas. Die Seite hat mehr Bytes, deshalb dauert es etwas länger, bis sie geladen ist (irgendwann läppert das sich natürlich), und zusätzlich zu deiner Subdomain muß auch noch einmal die Hauptdomain gefunden werden. Das kostet dich insgesamt vermutlich nicht mehr als eine halbe Sekunde beim ersten Seitenladen. Alle nachfolgenden Seiten sind annähernd gleich schnell.

    - Sven Rautenberg

    --
    "Habe den Mut, dich deines eigenen Verstandes zu bedienen!" (Immanuel Kant)
    1. Hi,

      1. Einen symbolischen Link im Dateisystem anlegen,
      2. Einen Alias anlegen,
      3. Du kopierst die Bilder im Dateisystem

      Es könnte noch eine 4. Variante geben: <base url="www.example.org"> - dann beziehen sich alle relativen Links auf die dort angegebene URL und nicht mehr auf die URL des Dokumentes. Zumindest theoretisch, ich habe nie probiert, wie es in der Praxis aussieht, sprich, ob die Browser das korrekt unterstützen.

      cu,
      Andreas

      --
      MudGuard? Siehe http://www.mud-guard.de/