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 サイトの他の関連記事を参照してください。