Вы можете использовать регулярные выражения, чтобы сделать это, но проще в использовании parse_url()
, который предназначен для возврата составных частей URL, и ссылаться на них для любой цели, вам нужно [испытания]:
<?php
// identify host from GET URL and compare
if (parse_url($_GET['url'], PHP_URL_HOST) !== 'mysite.com') {
// Redirect after 3 seconds
header("Refresh: 3; url=".$_GET['url']);
}
?>
Вы также может тянуть весь массив компонентов URL [схемы, хост, порт, пользователь, пройти, путь запроса, фрагмент], что делает их все доступные для использования:
<?php
// Your URL from whatever source
$url = $_GET['url'];
// Parse it and create an array of URL components
$purl = parse_url($url);
// identify host component and compare
if ($purl['host'] !== 'mysite.com') {
// Redirect after 3 seconds
header("Refresh: 3; url=$url");
}
?>
http://php.net/ parse_url – str