Невозможно скопировать пустой HTTP_REFERER - PullRequest
0 голосов
/ 15 февраля 2019

Я ищу ответ на этот вопрос , который объясняет несколько случаев, когда HTTP_REFERER может быть пустым.Однако я немного запутался, поскольку не смог воспроизвести пустой реферер ни в одном из описанных сценариев.

Чтобы дать лучшее представление о том, чего я пытаюсь достичь, у меня есть следующеев моем файле .htaccess (где example.com относится к моему домену):

RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?example.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ https://i.imgur.com/image.jpg [NC,R,L]

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

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

Итак, мой вопрос, почему я не могу воспроизвести пустой реферер, если у меня есть:

  • введенный URL сайта в браузересама адресная строка.
  • посетил сайт с помощью поддерживаемой браузером закладки.
  • посетил сайт в качестве первой страницы в окне / вкладке.
  • нажал ссылку на внешнемприложение.
  • переключено с URL-адреса https на URL-адрес http.
  • и т. д. *

Я использовал несколько браузеров, режим инкогнито, Tor, персональныйи частные / пожарные сети.Какую информацию мне не хватает, или мне не о чем беспокоиться?

...