При разработке веб-программ иногда нам нужно получить страницу, с которой подключается пользователь. Именно здесь используется реферер.
Это протокол http, поэтому можно реализовать любой язык, на котором можно разрабатывать веб-программы. Например, в jsp это:
request.getHeader("referer");
в php это $_SERVER['HTTP_REFERER']. Других примеров приводить не буду (собственно других языков я не знаю).
Так для чего же его можно использовать? Приведу два примера:
1. Предотвращение кражи соединений. Например, у меня есть сайт для загрузки программного обеспечения. На странице загрузки я сначала использую реферер, чтобы определить, является ли предыдущая страница моим собственным сайтом. что кто-то украл ваш адрес загрузки.
2. Безопасность веб-сайтов электронной коммерции. На странице, где я предоставляю важную информацию, например данные о кредитных картах, я использую реферер, чтобы определить, является ли предыдущая страница моим собственным веб-сайтом. В противном случае хакер мог использовать форму, написанную им самим. чтобы отправить его, чтобы пропустить. Для проверки JavaScript на предыдущей странице.
Примечания по использованию реферера:
если я напрямую вхожу на страницу с реферером в браузере, возвращаемое значение будет нулевым (jsp), что означает, что реферер будет иметь контент только в том случае, если вы нажмете на ссылку с другой страницы на эту страницу.
Я провел эксперимент. Например, мой реферальный код находится в формате a.jsp, а его предыдущая страница — b.htm. C.htm — это страница с iframe, и она встраивает a.jsp в iframe. Я ввожу адрес b.htm в браузере, а затем нажимаю кнопку подключения к c.htm. Отображаемый результат — b.htm. Если я напрямую ввожу c.htm в браузере, отображаемый результат — c.htm.