Мне нужно проверить и записать реферер посетителей в мое веб-приложение. Насколько надежным является использование HTTP_REFERER
? И есть ли другие альтернативы?
Насколько надежным является HTTP_REFERER?
Ответ 1
Использование HTTP_REFERER
не является надежным, оно зависит от заголовка HTTP Referer
, отправленного браузером или клиентским приложением на сервер, и поэтому не может быть доверено.
Что касается заголовка Referer
, в разделе 15.1.2 из RFC2616 говорится:
Поэтому приложения ДОЛЖНЫ поставлять такой же контроль над этой информацией насколько это возможно, поставщику этого информация.
и
Мы предлагаем, хотя и не требуем, что удобный переключающий интерфейс предоставленному пользователю для включения или отключить отправку From и Информация о реферере.
Многие онлайн-инструменты для обеспечения конфиденциальности блокируют это значение, и многие браузеры, такие как FireFox, в течение длительного времени разрешают пользователям предотвращать отправку этого заголовка. Таким образом, в двух словах, я бы не стал полагаться на это с какой-либо серьезной целью. Например, закрепление форм, чтобы спаммеры на диске не могли публиковать значения, поскольку Referer
можно подделать.
Подробнее читайте:
Использование поля для проверки подлинности или авторизации (WayBackMachine)