Осмотрите ссылающийся домен в PHP

18
задан Dave Jarvis 20 April 2010 в 03:54
поделиться

4 ответа

Да, но имейте в виду некоторые прокси, и другие вещи разделяют эту информацию, и она может быть легко подделана. Поэтому никогда не полагайтесь на него. Например, не думайте, что Ваше веб-приложение безопасно от CSRF, потому что Вы проверяете ссылающийся домен для соответствия собственному серверу.

$referringSite = $_SERVER['HTTP_REFERER']; // is that spelt wrong in PHP ?

Если Вы захотите только позволить запросы от определенного домена, то необходимо будет проанализировать часть URL для получения высокоуровневого домена. Поскольку я узнал больше, это может быть сделано с parse_url PHP ().

Как andyk указывает в комментариях, необходимо будет также допускать www.example.com и example.com.

28
ответ дан 30 November 2019 в 07:18
поделиться

Вы не можете доверять ссылающемуся домену. Несмотря на прибытие из $_SERVER массив, это - на самом деле пользователь/браузер, предоставил значение и легко фальсифицируется, с помощью таких вещей в качестве дополнения Firefox RefControl.

4
ответ дан 30 November 2019 в 07:18
поделиться

В то время как можно посмотреть на $_SERVER['HTTP_REFERER'] для получения относящегося сайта не ставьте ферму на нем. Браузер устанавливает этот заголовок, и он легко имитируется.

Если очень важно, что только люди, происходящие из определенных ссылающихся доменов, просматривают Ваш сайт, не используйте этот метод. Необходимо будет найти иначе, как основной автор, для защиты содержания. Я не говорю, что Вы не должны использовать эту технику, просто иметь в виду, что это не является надежным.

BTW, можно также заблокировать ссылающиеся домены на апачском уровне с помощью mod_rewrite.

6
ответ дан 30 November 2019 в 07:18
поделиться

Необходимо исследовать $ _SERVER массив для ключа 'HTTP_REFERER'.

0
ответ дан 30 November 2019 в 07:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: