2017-06-23 1 views
0

Wenn Sie eine URL rekursiv erweitern, ist es sicher, sich auf das URL-Ergebnis zu verlassen, das curl_getinfo($ch, CURLINFO_EFFECTIVE_URL) anders als die Location-Kopfzeile (301/302 Umleitung) verwendet?Sichere CURLINFO_EFFEKTIVE_URL anstelle der Standortadresse?

Ich fand, dass die location URL relativ sein kann, aber die CURLINFO_EFFECTIVE_URL ist immer absolut. Welches ist besser? Ich mache rekursive Erweiterung für eine URL.

Danke!

Antwort

0

CURLINFO_EFFECTIVE_URL Verwendung erspart Ihnen einige Arbeiten wie am Ende müssen Sie FQDN trotzdem haben:

Location = URI-Referenz

Der Feldwert besteht aus einem einzelnen URI-Referenz. Wenn es die Form einer relativen Referenz ( ) hat ([RFC3986], Abschnitt 4.2), wird der Endwert berechnet, indem es gegen die effektive Anfrage-URI aufgelöst wird ([RFC3986], Abschnitt 5).

https://tools.ietf.org/html/rfc7231

+0

danke, und wie kann ich meine Rekursion stoppen? Derzeit wird es nicht fortgesetzt, wenn es keinen "Location" Header gibt. Was gibt 'CURLINFO_EFFEKTIVE_URL' zurück, wenn keine Umleitung erfolgt? –

+0

https://curl.haxx.se/libcurl/c/CURLINFO_EFFECTIVE_URL.html –