ホームページ >バックエンド開発 >PHPチュートリアル >file_get_contents() を使用するときにファイルのリダイレクトを追跡する方法は?

file_get_contents() を使用するときにファイルのリダイレクトを追跡する方法は?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-01 13:19:02963ブラウズ

How to Track File Redirection when using file_get_contents()?

file_get_contents によるファイル リダイレクト追跡

file_get_contents() を利用すると、外部 URL が別の場所にリダイレクトされた場合でも、コンテンツを取得できます。 。ただし、このようなリダイレクト後の実際のターゲット URL を決定するのは困難な場合があります。

リダイレクトされた URL の取得

これに対処するには、file_get_contents() で自動リダイレクト処理を無効にすることを検討してください。これは、stream_context_create() 関数を通じて実現できます。

<code class="php">$context = stream_context_create(
    array(
        'http' => array(
            'follow_location' => false
        )
    )
);

$html = file_get_contents('http://www.example.com/', false, $context);</code>

follow_location を false に設定すると、スクリプトはリダイレクトに従いません。リダイレクトされた URL を取得するには、$http_response_header 変数を調べます。

<code class="php">var_dump($http_response_header);</code>

これにより、Location ヘッダー内の実際のターゲット URL を含む、応答ヘッダーを含む配列が提供されます。

以上がfile_get_contents() を使用するときにファイルのリダイレクトを追跡する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。