Jens: Problem mit geblocktem referer

Hallo Leute,

ich bin ziemlich neu in Sachen PHP und habe eben folgendes Problem entdeckt.

header("Location: $HTTP_REFERER")

funktioniert nicht, wenn der Browser keine Referer überträgt.
Kann man das Ergebnis irgendwie anders erreichen?

Jens

  1. Hi,

    Kann man das Ergebnis irgendwie anders erreichen?

    nein. Der Referer darf niemals für etwas anderes als informative Zwecke verwendet werden, er besitzt _keine_ technische Nutzbarkeit.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hallo Cheatah!

      nein. Der Referer darf niemals für etwas anderes als informative Zwecke verwendet werden, er besitzt _keine_ technische Nutzbarkeit.

      Prinzipien finde ich auch wichtig. ;-)
      Aber eigentlich will den "Referer" ja auch los werden. Kann man etwas vergleichbares nicht irgendwie anders erreichen. Und sei es nur zu Übungszwecken?

      Jens

      1. Hi,

        nein. Der Referer darf niemals für etwas anderes als informative Zwecke verwendet werden, er besitzt _keine_ technische Nutzbarkeit.
        Prinzipien finde ich auch wichtig. ;-)

        das ist kein Prinzip, sondern Tatsache.

        Aber eigentlich will den "Referer" ja auch los werden.

        Konfiguriere Deinen Client entsprechend.

        Kann man etwas vergleichbares nicht irgendwie anders erreichen.

        Etwas Vergleichbares wie was? Der Referer ist keine verlässliche Information, und damit nicht verwendbar.

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
      2. Hi,

        Kann man etwas vergleichbares nicht irgendwie anders erreichen. Und sei es nur zu Übungszwecken?

        Z.B. Indem Du den URL der Herkunftsseite an den Ziel-URL anhängst oder in einen Cookie schreibst und später auswertest. Oder indem Du den Herkunfts-URL mittels JavaScript an die nächste Seite übergibst.

        Gruß, Cybaer

        --
        Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
  2. echo $begrueszung;

    header("Location: $HTTP_REFERER")

    funktioniert nicht, wenn der Browser keine Referer überträgt.
    Kann man das Ergebnis irgendwie anders erreichen?

    Allgemein gesagt: Wenn es dir der User (sein Browser) nicht sagt, wer soll es dir sonst sagen?

    Etwas spezieller (geraten): Wenn du wissen willst, welche _deiner_ Seiten der User vorher besucht hat, dann müsstest du zum einen den User wieder erkennen (Stichwort: Session) und zum anderen die Information zu besuchten Seiten (oder zur letzten besuchten Seite) irgendwo merken (Session, DB, POST/GET, ...).

    echo "$verabschiedung $name";

  3. Hallo Leute!

    Ich habe eingesehen, dass man sich auf den Referer nicht verlassen kann. Ebenfalls leuchtet mir ein, dass der Browser mir die Information schon geben muss.
    Also meine Anschlussfrage. Kann man so etwas wie eine Fallbacklösung schaffen? Wenn der Referer nicht übertragen wird (was wird dann eigentlich stattdessen übertragen?) dann domain/index.php? Geht sowas?

    Danke für eure Geduld!

    Jens

    1. Hi,

      Also meine Anschlussfrage. Kann man so etwas wie eine Fallbacklösung schaffen?

      nein.

      Wenn der Referer nicht übertragen wird (was wird dann eigentlich stattdessen übertragen?)

      Nichts oder eine beliebige andere URL. Es existiert keine Unterscheidungsmöglichkeit.

      Cheatah

      --
      X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
      X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
      X-Will-Answer-Email: No
      X-Please-Search-Archive-First: Absolutely Yes
      1. Hi,

        Nichts oder eine beliebige andere URL.

        Oder ein beliebiger _String_ …

        cu,
        Andreas

        --
        Warum nennt sich Andreas hier MudGuard?
        Schreinerei Waechter
        Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
        1. Hallo,

          Nichts oder eine beliebige andere URL.
          Oder ein beliebiger _String_ …

          Naja, ein _beliebiger_ String nicht ;-)). Ein String, welcher mit
          ( absoluteURI | relativeURI )
          übereinstimmt, muss es eigentlich schon sein.
          http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.36

          Ein sehr strict ausgelegter HTTP-Server müsste z.B.:

          Referer: Das%ist%ein%Test

          eigentlich mit 400 Bad Request beantworten.

          viele Grüße

          Axel

          1. Hi,

            Nichts oder eine beliebige andere URL.
            Oder ein beliebiger _String_ …
            Naja, ein _beliebiger_ String nicht ;-)).

            richtig. MudGuard hat aber insofern Recht, als man sich auch darauf nicht unbedingt verlassen sollte :-)

            Cheatah

            --
            X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
            X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
            X-Will-Answer-Email: No
            X-Please-Search-Archive-First: Absolutely Yes
      2. Hi,

        Es existiert keine Unterscheidungsmöglichkeit.

        Zumindest sofern JavaScript aktiviert ist, ist eine Unterscheidungsmöglichkeit gegeben.

        Gruß, Cybaer

        --
        Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
        1. Hi,

          Zumindest sofern JavaScript aktiviert ist, ist eine Unterscheidungsmöglichkeit gegeben.

          nein. Zumal "JavaScript ist aktiviert" kein Boole'scher Wert ist.

          Cheatah

          --
          X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
          X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
          X-Will-Answer-Email: No
          X-Please-Search-Archive-First: Absolutely Yes
          1. Hi,

            Zumindest sofern JavaScript aktiviert ist, ist eine Unterscheidungsmöglichkeit gegeben.
            nein.

            OK, laß es mich anders formulieren: "Unter Benutzung von JavaScript kann man herausfinden, ob der Referrer echt ist, oder ob er gefälscht wurde. Cheatah weiß allerdings nicht wie."

            Diese Aussage dürfte es dann wohl genau treffen. ;->

            » Zumal "JavaScript ist aktiviert" kein Boole'scher Wert ist.

            Ja und?

            Gruß, Cybaer

            --
            Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!