include Datei adressieren vs. img src adressieren
Martin
- php
Hallo,
ich habe eine Domain www.example.com mit subdomains abc.example.com, def.example.com usw.
DOCUMENT_ROOT ist jeweils:
/home/example/www.example.com/docs
/home/example/abc.example.com/docs
/home/example/def.example.com/docs
usw.
in /home/example/abc.example.com/docs steht die folgende Datei:
<?php require "../../www.example.com/docs/scripts/include.inc" ?>
<html>
<body>
<img src = "../../www.example.com/docs/images/image.jpg" >
</body>
</html>
Jetzt das Problem:
require funktioniert, aber das Bild wird nicht gefunden.
Javascripts an entsprechender Stelle werden auch nicht gefunden.
Hat das seine Richtigkeit, kann man die img src bzw javascript src so nicht adressieren, oder hab ich da was falsch gemacht?
Gruß und Dank
Martin
Hello,
require funktioniert, aber das Bild wird nicht gefunden.
Require "guckt von innen", der Image-Tag doch wohlk aber "von außen", oder?
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Hallo Martin.
DOCUMENT_ROOT ist jeweils:
/home/example/abc.example.com/docs
[…]
<img src = "../../www.example.com/docs/images/image.jpg" >
</body></html>
Jetzt das Problem:
require funktioniert, aber das Bild wird nicht gefunden.
Natürlich nicht. Da DOCUMENT_ROOT auf „/home/example/abc.example.com/docs/“ gesetzt wurde, dürfen Anfragen im HTTP-Kontext auch nur bis dorthin aufsteigen.
Wäre dem nicht so, könnte ein jeder völlig frei auf Dateisystemebene agieren und tatsächlich Dateien auslesen.
Anschaulicher:
Dateisystem | HTTP (Server)
--------------------------------------------------
/home/example/abc.example.com/docs | /
--------------------------------------------------
/ | Nicht erreichbar, sofern DOCUMENT_ROOT nicht „/“
Willst du also das Bild adressieren, musst du schon den Umweg über HTTP machen, also „http://www.example.com/images/image.jpg“ im src-Attribut notieren.
Einen schönen Sonntag noch.
Gruß, Ashura
Willst du also das Bild adressieren, musst du schon den Umweg über HTTP machen, also „http://www.example.com/images/image.jpg“ im src-Attribut notieren.
Danke Ashura. Javascripts muss ich dann wohl auch so adressieren.
Jetzt fangen aber die Probleme erst an: Ich habe ein Hauptdokument und einen iframe. in beiden gibt es javascripts, die jetzt über HTTP adressiert werden müssen. Wie es scheint verstehen sich die beiden Scripts jetzt nicht mehr. Wenn ich im Hauptdokument <div id="idDingsbums"> habe (per DOM generiert), dann erkennt das Script im iframe anscheinend nicht mehr parent.getElementById("idDingsbums"). Ich krieg da als Fehlermeldung "Zugriff verweigert". Oder sollte es das Div doch erkennen, liegt der Fehler woanders?
Martin
echo $begrüßung;
Wenn ich im Hauptdokument <div id="idDingsbums"> habe (per DOM generiert), dann erkennt das Script im iframe anscheinend nicht mehr parent.getElementById("idDingsbums").
Wenn du mit Javascript von Dokumenten, die von einer Domain stammen, auf Dokumente zugreifen willst, die von einer anderen Domain stammen, dann bekommst du aus dem guten Grund, der sich Same-Origin-Policy nennt, ein
"Zugriff verweigert"
echo "$verabschiedung $name";