Wie kann ich die endgültige URL nach Weiterleitungen erhalten, wenn ich file_get_contents() in PHP verwende?

Linda Hamilton
Freigeben: 2024-10-28 09:52:29
Original
226 Leute haben es durchsucht

How Can I Get the Final URL After Redirects When Using file_get_contents() in PHP?

File_Get_Contents: Enthüllung der endgültigen URL

Problem: Beim Scraping von Inhalten mit file_get_contents() stoßen Sie auf Weiterleitungen, möchten aber die wahre URL aufdecken .

Lösung:

Obwohl file_get_contents() im Allgemeinen Weiterleitungen verarbeitet, verwenden Sie den folgenden Ansatz, wenn Sie explizit Kontrolle benötigen:

<code class="php">// Disable automatic redirect following
$context = stream_context_create([
    'http' => [
        'follow_location' => false
    ]
]);

// Retrieve the content with no redirects
$html = file_get_contents('http://www.example.com/', false, $context);

// Access the HTTP response headers to determine the actual URL
var_dump($http_response_header);</code>
Nach dem Login kopieren

Von Wenn Sie „follow_location“ auf „false“ setzen, verhindern Sie, dass file_get_contents() Weiterleitungen automatisch folgt. Die Antwortheader (verfügbar in $http_response_header) enthalten den „Location“-Header, der die wahre URL nach etwaigen Weiterleitungen angibt.

Tipp: Dieser Ansatz ist von der Lösung inspiriert, die in „How do“ bereitgestellt wird Ich ignoriere einen verschobenen Header mit file_get_contents in PHP?

Das obige ist der detaillierte Inhalt vonWie kann ich die endgültige URL nach Weiterleitungen erhalten, wenn ich file_get_contents() in PHP verwende?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!