file_get_contents() Referer mitgeben

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • file_get_contents() Referer mitgeben

    Hi,

    in unserem CMS hole ich des öfteren Daten von anderen Webseiten per XML. Die aufgerufenen XML Schnittstellen sind in den meisten Fällen Schnittstellen von eigenen Webseiten mit dem selben CMS.
    Falls in einem XML-Feed ein Fehler auftritt, wird das natürlich geloggt. Beim Logging wird automatisch der Referer zum fehlerhaften Script mitgespeichert.

    Nun das Problem:
    Die XML-Feeds werden mit file_get_contents() geholt und dann entsprechend verarbeitet. Tritt ein Fehler auf springt das Logging and und meldet den Fehler - nur leider ohne Referer. Es gibt ja schließlich keinen.
    Um nun besser heraus finden zu können wie der Aufruf aussah der bei der XML-Schnittstelle einen Fehler generiert hat, wäre es natürlich toll wenn ich den Referer zum, Script sehen würde.

    Nun also die Frage: Wie kann ich einfach den Referer "mitgeben"?

    Vielen Dank für eure Tipps...

  • #2
    afaik kannst du keinen referrer mitgeben, es sei denn du gehst über fsockopen(). aber du könntest an die aufgerufenen url einen parameter anhängen, der das script bzw. den speziellen aufruf identifiziert. quasi als notlösung.
    Kissolino.com

    Kommentar


    • #3
      Hab grad was interessantes in den Comments gelesen

      PHP-Code:
      $context=array('http' => array ('header'=> 'Range: bytes=1024-', ),);
      $xcontext stream_context_create($context);
      $str=file_get_contents("http://www.example.com/",FALSE,$xcontext); 
      Sieht also so aus als ob man über den Kontext nen Header mitgeben kann. Ist ein Referer nicht auch nur ein Header und wenn ja, wie müsste er aussehen?

      Kommentar


      • #4
        PHP-Code:
        array ('header'=> 'Referer: http://....' 
        wenn ich das rfc richtig verstehe. ich glaub trotzdem nicht dran.
        Kissolino.com

        Kommentar


        • #5
          Funzt!


          PHP-Code:
          $context = array('http' => 
                            array(
                              
          'header' => 'Referer: http://'.
                                           
          $_SERVER['HTTP_HOST'].'/'.
                                           
          $_SERVER['REQUEST_URI']));
          $xcontext stream_context_create($context);

          $str_content file_get_contents($data_urlfalse$xcontext); 
          Thnx
          Zuletzt geändert von prego; 07.11.2006, 09:24.

          Kommentar


          • #6
            man lernt nicht aus.
            Kissolino.com

            Kommentar


            • #7
              Funzt !
              Aber nur mit PHP 5
              aus dem Manual

              Anmerkung: Die Kontext-Unterstützung wurde in PHP 5.0.0 eingeführt.
              Gruss

              tobi
              Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

              [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
              Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

              Kommentar


              • #8
                Sorry,

                aber ich entwickel schon seit nem Jahr nicht mehr mit PHP4. Ich denke das man ohne PHP5 nicht um fsockopen rum kommt.

                Kommentar

                Lädt...
                X