Referer-Problem ssi/javascript
Quaaaaaak
- cgi
Hallo,
ich werde noch irre !!!
Beide Anweisungen sollten doch denselben Wert liefern, oder?
___________
<!--#echo var="HTTP_REFERER" -->
<script type="text/javascript">
<!--
document.write(document.referrer);
//-->
</script>
___________
Das tun sie aber nur bei Klick von der Domain,
auf der auch die Seite liegt.
Wenn ich die Seite von einer anderen Domain aufrufe,
bekomme ich als ssi-Wert (none) und nur
per Javascript den Referer geliefert ...
Bitte Hiiilfe, was kann ich tun ???
Quaaaaak
Hi,
ich werde noch irre !!!
das wäre beinahe ein Grund, mehrere Ausrufezeichen zu verwenden.
Beide Anweisungen sollten doch denselben Wert liefern, oder?
Nein. Das eine gibt das aus, was der Client beim Request als Referer übermittelt hat, bzw. was von irgendeinem System an die Stelle geschrieben wurde. Das andere gibt aus, was lokal der Referer der Ressource zu sein scheint. Gerade in Framesets kann das durchaus variieren, weil die Daten oft zu unterschiedlichen Zwecken verwendet werden und somit dem Browserhersteller eine andere Interpretation sinnvoll erschien.
Wenn ich die Seite von einer anderen Domain aufrufe,
Das heißt? Welche URL enthält den Link, welcher Kontext wird daraufhin erzeugt, wo darin ist die Seite mit den Ausgaben, welchen Browser, Proxies etc. verwendest Du?
Cheatah
Hi Cheatah,
Beide Anweisungen sollten doch denselben Wert liefern, oder?
Nein. Das eine gibt das aus, was der Client beim Request als Referer übermittelt hat, bzw. was von irgendeinem System an die Stelle geschrieben wurde. Das andere gibt aus, was lokal der Referer der Ressource zu sein scheint.
Nochmal für so einfach Strukturierte wie mich ...
Es werden nicht dieselben Daten ausgelesen ?!
SSI liest den Referer aus dem übermittelten Datenstrom und
Javascript zieht den Referer einfach aus der Historie?!
Liege ich da richtig?
Wenn ich die Seite von einer anderen Domain aufrufe,
Das heißt? Welche URL enthält den Link, welcher Kontext wird daraufhin erzeugt, wo darin ist die Seite mit den Ausgaben, welchen Browser, Proxies etc. verwendest Du?
Browser ist _Schimpf ruhig mit mir 5.5_, kein Proxieserver.
Habe Testlink und Abfrageseite wegen laufendem Betrieb gerade gekickt, war aber ein Klick zwischen Linux-Schlund-Servern.
Das mit dem _erzeugten Kontext_ verstehe ich noch nicht?
Kann das von der Serverkonfiguration abhängen,
ob der Referer mit dem Datenstrom geschickt wird oder nicht?
Danke und viele Grüsse, Quaaak <- wird schon weniger Gequaaake :o)
Hi,
Es werden nicht dieselben Daten ausgelesen ?!
nun, das ist offensichtlich, oder? :-)
SSI liest den Referer aus dem übermittelten Datenstrom und
Ja, etwas anderes ist serverseitig schließlich nicht vorhanden.
Javascript zieht den Referer einfach aus der Historie?!
Nicht aus der History - bzw. nur dann, wenn der Browser eine etwas seltsame JavaScript-Implementierung hat (d.h. es kommt in der Praxis tatsächlich vor, aber nur selten). Der Browser weiß allerdings, in welchem Kontext die Seite angezeigt wird - insbesondere was für Frames drumherum sind (auch davon hat der Server keine Ahnung). Wenn der Browserhersteller z.B. entschieden hat, hier den HTTP_REFERER des übergeordneten oder obersten Framesets zu nehmen, hast Du bereits Unterschiede.
Auch wenn Du keine Frames hast, wundern mich Unterschiede ehrlich gesagt nicht; obwohl ich nicht sagen könnte, was _sinnvollerweise_ anderes von JavaScript geliefert werden könnte.
Das mit dem _erzeugten Kontext_ verstehe ich noch nicht?
Ich beziehe mich hauptsächlich auf Framesets; gerade im Hinblick auf Billig-Domains ohne eigenen Webspace.
Kann das von der Serverkonfiguration abhängen,
Der Referer kommt in jedem Fall vom Browser (bzw. von etwas, das noch vor dem Server kommt - da Du einen Proxy ausschließt, ist das vermutlich der Browser). Der Server erfährt ihn nur.
Cheatah