リダイレクトが発生した場合、file_get_contents の後に実際の URL を取得するにはどうすればよいでしょうか? 質問する

リダイレクトが発生した場合、file_get_contents の後に実際の URL を取得するにはどうすればよいでしょうか? 質問する

私はfile_get_contents()サイトからコンテンツを取得するために使用していますが、引数として渡した URL が別の URL にリダイレクトされても、驚くべきことに動作します。

問題は、新しい URL を知る必要があることです。それを知る方法はあるでしょうか?

ベストアンサー1

file_get_contents()curl の代わりに使用する必要がある場合は、リダイレクトを自動的に実行しないでください。

$context = stream_context_create(
    array(
        'http' => array(
            'follow_location' => false
        )
    )
);

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

var_dump($http_response_header);

回答のインスピレーション:PHP で file_get_contents を使用して移動されたヘッダーを無視するにはどうすればよいですか?

おすすめ記事