Информация, которую вы видите на веб-сайтах, представляет собой лишь часть данных, которые эти сайты передают при перемещении с веб-сервера в браузер пользователя и наоборот. Существует также довольно много данных, которые происходят за кулисами - и если вы знаете, как получить доступ к этим данным, вы можете использовать их интересными и полезными способами! В этой статье мы рассмотрим один конкретный фрагмент данных, который передается во время этого процесса - HTTP-реферер.
Referer - это неправильное произношение слова ссылающейся , который был введен и остался в коде и названии этой возможности.
Что такое HTTP-Referer?
HTTP-референт - это данные, которые передаются веб-браузерами на сервер, чтобы сообщить вам, на какой странице был включен читатель, прежде чем они попали на эту страницу. Эта информация может использоваться на вашем веб-сайте для дополнительной помощи, создания специальных предложений для целевых пользователей, перенаправления клиентов на соответствующие страницы и контента или даже для блокирования посещения посетителей на вашем сайте. Вы также можете использовать скриптовые языки, такие как JavaScript, PHP или ASP, чтобы читать и оценивать информацию о реферере.
Сбор информации рефералов С PHP, JavaScript и ASP
Итак, как вы собираете данные HTTP-реферера? Вот некоторые методы, которые вы можете использовать:
PHP хранит информацию о реферере в системной переменной HTTP_REFERER. Чтобы отобразить референт на странице PHP, вы можете написать:
if (isset ($ _ SERVER 'HTTP_REFERER')) {echo $ _SERVER 'HTTP_REFERER';}
Это проверяет, что переменная имеет значение, а затем выводит ее на экран. Вместо
echo $ _SERVER 'HTTP_REFERER'; вы бы поставили строки сценария для проверки разных рефери.
JavaScript использует DOM для чтения реферирования. Как и в случае с PHP, вы должны убедиться, что у референта есть значение. Однако, если вы хотите манипулировать этим значением, вы должны сначала установить его в переменной. Ниже показано, как вы можете отобразить ссылку на вашу страницу с помощью JavaScript. Обратите внимание, что DOM использует альтернативное правописание реферера, добавляя туда дополнительный «r»:
if (document.referrer) {var myReferer = document.referrer;document.write (myReferer);}
Затем вы можете использовать референт в скриптах с переменной
myReferer
ASP, как и PHP, устанавливает референт в системную переменную. Затем вы можете собрать такую информацию:
if (Request.ServerVariables ("HTTP_REFERER")) {Dim myReferer = Request.ServerVariables ("HTTP_REFERER")Response.Write (myReferer)}
Вы можете использовать переменную
myReferer для настройки ваших скриптов по мере необходимости.
Как только у вас есть референт, что вы можете с ним сделать?
Таким образом, получение данных - это шаг 1. Как вы это сделаете, это будет зависеть от вашего конкретного сайта. Следующим шагом, конечно же, является поиск способов использования этой информации.
После того, как у вас есть данные реферата, вы можете использовать его для написания своих сайтов несколькими способами. Одна простая вещь, которую вы можете сделать, - это просто опубликовать, откуда вы думаете, откуда пришел посетитель. По общему признанию, это довольно скучно, но если вам нужно запустить некоторые тесты, это может быть хорошей точкой входа для работы.
Что является более интересным примером, когда вы используете референт для отображения различной информации в зависимости от где они пришли. Например, вы можете сделать следующее:
- Общее приветственное сообщение
- Вы можете распечатать URL-адрес реферала в верхней части страницы в общем приветственном сообщении. Как я уже упоминал выше, это довольно скучно, но предлагает некоторую базовую персонализацию.
- Приветствуем посетителей поисковой системы
- Когда кто-то прибыл на ваш сайт из поисковой системы (т. Е. Их референт - google.com или bing.com или yahoo.com и т. Д.), Вы можете предоставить им небольшую дополнительную информацию, чтобы побудить их оставаться дольше на твой сайт. Вы можете указать URL своего бюллетеня или предоставить им ссылки на некоторые из наиболее популярных страниц вашего сайта.
- Передача информации в формы
- Если у вас есть ссылка на вашем сайте, чтобы люди сообщали о проблемах с самим сайтом, знание реферата может быть очень полезным. Люди часто сообщают о проблемах с веб-страницей без указания URL-адреса, но вы можете использовать информацию о реферере, чтобы угадать, о чем они сообщают. Этот скрипт добавит референта в скрытое поле формы, позволяя вам получить данные о том, где на сайте они могут столкнуться с проблемой.
- Создайте специальное предложение для некоторых посетителей
- Возможно, вы хотите дать людям, которые приходят с определенной страницы, специальную сделку по вашим продуктам или услугам. Это еще один пример персонализации, в котором вы формируете свой пользовательский интерфейс и контент, который они видят на основе своих пользовательских данных. Например, если вы продаете различные продукты, вы можете предложить сделку, имеющую отношение к тому, что они уже глядя на один ваш сайт.
- Отправлять посетителей на другую страницу
- Вы также можете отправить людей от конкретного референта на другую страницу. Будьте очень осторожны с этим, так как Google и другие поисковые системы могут считать, что это вводит в заблуждение и наказывает ваш сайт.
Блокировать пользователей с помощью .htaccess от Referer
С точки зрения безопасности, если вы испытываете множество спамеров-реферов на своем сайте из одного конкретного домена, это может помочь просто заблокировать этот домен с вашего сайта. Если вы используете Apache с установленным mod_rewrite, вы можете заблокировать их несколькими строками. Добавьте в свой
.htaccess файл:
RewriteEngine on# Опции + FollowSymlinksRewriteCond% {HTTP_REFERER} спамер .com NCRewriteRule. * - F
Не забудьте изменить слово
спамер .com к домену, который вы хотите заблокировать. Не забудьте поставить перед любыми периодами в домене.
Не полагайтесь на реферала
Помните, что можно обмануть референта, поэтому вы должны никогда используйте только референт для обеспечения безопасности. Вы можете использовать его как дополнение к своей другой безопасности, но если к странице должны быть доступны только определенные люди, тогда вы должны установить для нее пароль,
Htaccess.




