Как выбрать только корневой домен из $ SERVER['HTTP REFERER'];?
Я хочу иметь страницу 404, которая может определить, пришел ли пользователь на эту страницу через мой сайт, через мой сокращенный URL или через другой сайт, и я делаю это с помощью PHP. Я медленно справляюсь с PHP, и это может быть простой вопрос, но я очень устал быть честным и у меня нет кофеина в моей системе, и я хочу как можно скорее связать любые свободные концы в моем портфеле.
Я нашел $_SERVER['HTTP_REFERER'];
переменная PHP дает мне весь URL-адрес, который является начать. Есть ли способ, которым это может дать мне только корневой домен, либо через другую переменную, либо функцию, имея в виду, что некоторые рефереры могут использовать http:// и некоторые https:// (так что просто начиная с седьмого символа не всегда будет работать)? Таким образом, я могу сопоставить URL-адрес на основе двух (или более) предопределенных адресов и создать контент, относящийся к этому домену.
3 ответов
parse_url($_SERVER['HTTP_REFERER'], PHP_URL_HOST)
см.http://php.net/manual/en/function.parse-url.php.
обратите внимание, что референт ужасно легко подделать, поэтому он вряд ли надежен.
http://php.net/manual/en/function.parse-url.php может быть ваш лучший выбор, хотя вы можете использовать регулярное выражение для достижения того, что вы ищете легко.