JJH Lemmens: Link erkennen

Hallo,
Wer kann mir Auskunft geben über folgende Frage.
Wie kann ich in meiner Homepage (index.htm)einen Link von einer Domain erkennen und in Abhängigkeit hiervon zu einem bestimmten Dokument weiterleiten?

  1. Hallo JJH Lemmens,

    Wie kann ich in meiner Homepage (index.htm) einen Link von einer Domain erkennen und in Abhängigkeit hiervon zu einem bestimmten Dokument weiterleiten?

    Vermutlich möchtest du den Referrer auswerten. Dazu gibt es mehrere Möglichkeiten:

    Eine JavaScript-Funktion, die im einleitenden body-Tag mit Hilfe von onLoad aufgerufen wird, den Referrer auswertet und dann eine entsprechende Weiterleitung vornimmt. Es funktioniert aber auch mittels einer serverseitigen Technik (Perl, PHP ...). Mit Sicherheit kannst du auch etwas an der Serverkonfiguration einstellen, dazu sollten sich aber Mitleser äußern, die hiervon mehr Ahnung haben als ich ;-)

    Sei dir jedoch bewusst, dass die Auswertung des Referrers nicht allumfassend ist, da manche Besucher die Übermittlung des Referrers abgeschaltet haben oder weil schlicht kein Referrer übermittelt wurde (z.B. bei direktem Zugriff).

    Grüße
    Torsten

    1. Hallo Torsten,

      Sei dir jedoch bewusst, dass die Auswertung des Referrers nicht
      allumfassend ist, da manche Besucher die Übermittlung des Referrers
      abgeschaltet haben oder weil schlicht kein Referrer übermittelt wurde
      (z.B. bei direktem Zugriff).

      Oder auch schlicht ein falscher Referrer uebermittelt wird.

      Gruesse,
       CK

      --
      Das Sein entsteht aus dem Nicht-Sein.
    2. Hallo,

      Eine JavaScript-Funktion, die im einleitenden body-Tag mit Hilfe von onLoad aufgerufen wird, den Referrer auswertet und dann eine entsprechende Weiterleitung vornimmt.

      Nur interessehalber: Wie soll das funktionieren?
      Und lassen die heutigen Browser das Auslesen der History
      durch Folgeseiten noch zu?

      Gruesse,

      Thomas

      1. Hallo Thomas,

        Eine JavaScript-Funktion, die im einleitenden body-Tag mit Hilfe von onLoad aufgerufen wird, den Referrer auswertet und dann eine entsprechende Weiterleitung vornimmt.
        Nur interessehalber: Wie soll das funktionieren?

        Mit Hilfe der Eigenschaft referrer des Objektes document:
        http://selfhtml.teamone.de/javascript/objekte/document.htm#referrer

        Kombiniert mit den entsprechenden Methoden des String-Objekts:
        http://selfhtml.teamone.de/javascript/objekte/string.htm

        Und einer simplen Weiterleitung:
        http://selfhtml.teamone.de/javascript/objekte/location.htm#href

        Und lassen die heutigen Browser das Auslesen der History durch Folgeseiten noch zu?

        Ich meine schon, wenn die History Daten enthält und JavaScript aktiviert ist.

        Grüße
        Torsten

        PS: und ich dachte, JS wäre ein rotes Tuch für dich ;-))

        1. Hallo Torsten,

          [JavaScript - Referrer auswerten]
          Mit Hilfe der Eigenschaft referrer des Objektes document:
          http://selfhtml.teamone.de/javascript/objekte/document.htm#referrer

          Ah, danke.
          Wieder was gelernt, auch wenn es JS betrifft... ;-)

          Und lassen die heutigen Browser das Auslesen der History durch Folgeseiten noch zu?
          Ich meine schon, wenn die History Daten enthält und JavaScript aktiviert ist.

          Soweit ich es im Kopf hatte (und so wie es auch in SelfHTML
          http://selfhtml.teamone.de/javascript/objekte/history.htm steht)
          ist es eben mit JS in den modernen Browsern aus Sicherheitsgruenden
          _nicht_ moeglich, die Werte der History auszulesen.
          Man kann den Benutzer auf Position -5 schicken, oder man
          kann Position -5 ueberschreiben (was ich auch doof und
          unsicher finde), aber man kann nicht schauen, was Position -5 war.

          Somit kann man auch nicht Position -1 (also den Referrer) auslesen.

          PS: und ich dachte, JS wäre ein rotes Tuch für dich ;-))

          Whow - jemand liest meine Sig und erinnert sich sogar daran! ;-)

          Ich kenne JS zwar einigermassen, und selten einmal
          setze ich es fuer irgend ein kleines Bonus Feature ein.

          Als Autor ist mir JS - ausser fuer ganz, ganz primitive Dinge - schlichtweg
          zu aufwendig (Browser-Unterschiede, notwendiger Fallback...)

          Als Seitenbetrachter habe ich erst sehr wenige Ausnahmen gesehen,
          wo JS _nuetzlich_ war, deshalb schalte ich es oft ab.
          In 95% der Faelle wird ja JS nur fuer nervige und benutzerfeindliche
          Dinge wie Pop-Ups, Lauftexte, animierte Maus-Zeiger-Schwaenze
          und zur Manipulation der Statusleiste missbraucht.

          (Chraeckers Stempelseiten sind ein lustiger Zeitvertrieb und eine
          positive Ausnahme, wobei ich da nicht von "nuetzlich" im
          engeren/utilitaristischen Sinne sprechen moechte...)

          Als Leser und Poster hier im Forum schone ich meine Nerven,
          indem ich den Themenbereich "JavaScript" gleich ausblende.
          Oft posten dort Newbies irgendwelche Quellcode-Wuesten,
          bei denen man die Nadel im Heuhaufen finden soll, oder sie
          fragen um Rat bei irgendwelchen nervigen und benutzerfeindlichen
          Dingen (siehe oben).
          Ihnen diese immer wieder auszureden, ist mir zu doof.
          Ich bin kein Sisyphus oder Masochist.

          Da bin ich lieber bei HTML, CSS und PHP missionarisch
          im Kampf fuer sauberen Code ;-)

          Das alles heisst aber nicht, dass mich nicht dennoch
          grundsaetzlich interessiert, was mit JS heute moeglich ist
          (und was nicht).

          Gruesse + gute Nacht,

          Thomas

          --
          Dank /my/ automatisch ausgeblendet: JavaScript, ASP.
          Manuell "ausgeblendet": Threads mit Frames, Iframes und Scrollbalken im Subject...
          Bitte keine Mails mit Fachfragen - dafuer gibt es das Forum!
          1. Hallo Thomas,

            Soweit ich es im Kopf hatte [...] ist es eben mit JS in den modernen Browsern aus Sicherheitsgruenden _nicht_ moeglich, die Werte der History auszulesen. Man kann den Benutzer auf Position -5 schicken, oder man kann Position -5 ueberschreiben [...], aber man kann nicht schauen, was Position -5 war.

            Das war mir bisher nicht bekannt, erscheint aber plausibel.

            Somit kann man auch nicht Position -1 (also den Referrer) auslesen.

            Nein, da irrst du dich. Der Referrer ist Bestandteil des HTTP-Headers, hat also nichts mit der browserseitigen Einrichtung namens History zu tun:

            http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.36

            Grüße
            Torsten

            1. Hallo Torsten,

              Nein, da irrst du dich. Der Referrer ist Bestandteil des HTTP-Headers, hat also nichts mit der browserseitigen Einrichtung namens History zu tun:

              http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.36

              Danke, danke! ;-)
              Ich lese immer wieder gerne in den Original-Dokumentationen nach.

              Ich meinte folgendes:
              In _gewissen_Faellen_ stimmen der Referrer und
              die Position -1 in der History ueberein.

              Der Referrer laesst sich ja offenbar - im Gegensatz
              zur History - durch JavaScript auslesen.

              Das erscheint mir auch nicht besonders "sicher" - aber
              eben, wer mit aktiviertem JavaScript rumsurft und den
              Browser den Referrer mitschicken laesst, lebt gefaehrlich... ;-)

              Gruesse,

              Thomas

              P.S. Ich weiss sehr wohl, was der Referrer ist u.s.w.
              Die Grundlagen von HTTP sind mir einigermassen bekannt.
              Ich poste hier auch regelmaessig Links auf
              http://www.dclp-faq.de/q/q-http-referer.html
              wenn die Leute serverseitig damit rumbasteln wollen. ;-)

              1. Hallo Thomas,

                Ich meinte folgendes:
                In _gewissen_Faellen_ stimmen der Referrer und
                die Position -1 in der History ueberein.

                Achso, na dann ;-)
                Konfuzius sagt: "Missvelständnisse sind da um ausgeläumt zu welden." ;-))

                Grüße
                Torsten