Один из способов (из многих) сделать это - открыть URL с помощью fopen
, а затем использовать stream_get_meta_data
для захвата заголовков.Это быстрый фрагмент, который я взял из того, что написал некоторое время назад:
$fh = fopen($uri, 'r');
$details = stream_get_meta_data($fh);
foreach ($details['wrapper_data'] as $line) {
if (preg_match('/^Location: (.*?)$/i', $line, $m)) {
// There was a redirect to $m[1]
}
}
Обратите внимание: у вас может быть несколько перенаправлений, и они могут быть как относительными, так и абсолютными.