cUrl - Redirect zur Speicherung auslesen

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

  • cUrl - Redirect zur Speicherung auslesen

    Hallo,

    ist nur ein kleines, triviales Anliegen:

    Ich habe eine kleine db-Tabelle mit diversen Urls die per cron einmal wöchentlich per cUrl ausgelesen werden. Hab das vor ner Ewigkeit mal ganz simpel angefangen ohne mir allzuviele Gedanken darüber zu machen.

    Mit der Zeit kam es natürlich dazu, dass manche Urls nicht mehr erreichbar waren und bei doch recht vielen hat man daran gedacht, entsprechende 301er-Weiterleitungen einzurichten. Also hab ich einfach cUrl die Weiterleitungen (maximal 5) vefolgen lassen und alles war gut.

    Jetzt wärs aber doch recht praktisch, wenn gleich wieder die richtige Url in die DB zurückgeschrieben werden würd und da frag ich mich, ob mein Ansatz - der mir als der einzig mögliche erscheint - so richtig ist:
    • Header zurückgeben lassen - damit krieg ich, soweit ich es sehe, alle Header zurück, bis cUrl am "Ziel" angelangt ist
    • den kompletten returnierten String anhand \r\n ausplitten
    • die einzelnen Array-Elementen nach HTTP/1 am Anfang durchsuchen
    • wenn ja, dürfte es ein HTTP-Header sein und dann im entsprechenden Block die Location falls vorhanden auslesen
    Nach der Prozedur dürfte ich die neue Url "in Händen halten" und kann den DS entsprechend updaten.

    Erscheint mir aufwändig aber ich find im Manual nix, dass ich ne Option setzen könnte, die mir das neue Ziel fertig frei Haus liefert oder überseh ich was?
    Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
    Schön - etwas Geschichte kann ja nicht schaden.
    Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

  • #2
    Zitat von Quetschi Beitrag anzeigen
    Erscheint mir aufwändig aber ich find im Manual nix, dass ich ne Option setzen könnte, die mir das neue Ziel fertig frei Haus liefert oder überseh ich was?
    In der manpage cURL - How To Use finde ich unter der Beschreibung des Parameters -w/--write-out folgende Variable:
    url_effective The URL that was fetched last. This is most meaningful if you've told curl to follow location: headers.
    (Ob und wie du die zur Verfügung hast, wenn du cURL nicht per commandline benutzt, müsstest du mal schauen.)
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Vermute mal dein Satz in der Klammer war ein Wink mit dem Zaunpfahl mal hier -> PHP: curl_getinfo - Manual zu schauen, wo ich genau das bekomm was ich suche - irgendwie war ich im richtigen Haus - nur war ich zu blöd die richtige Tür zu öffnen.

      Thx
      Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
      Schön - etwas Geschichte kann ja nicht schaden.
      Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

      Kommentar

      Lädt...
      X