Safari не передает HTTP_REFERER

Ни Safari, ни Chrome пока не отнесешь к очень популярным браузерам, но их доля будет расти — и Apple и тем более Google компании серьезные. Да и браузеры удачные, я сам бы пользовался Safari, если бы не было необходимости пользоваться несколькими дополнениями к Firefox. Так вот, оба браузера построены на библиотеке Webkit и оба грешат тем, что не передают HTTP_REFERER.

what is my http_referer

На самом деле передают, но не всегда, что еще больше запутывает ситуацию. Если человек просто нажмет на ссылку, то реферер будет передан серверу, если откроет новое окно или вкладку «альтернативным» нажатием (на Маке это cmd-click или нажатие средней кнопки), то тоже передастся, а вот если нажать правой кнопкой (или ctrl-click), то нет. Такие результаты во всяком случае получились у меня.

Для чего вообще нужен HTTP_REFERER? Чтобы записать в статистику сведения о том, откуда пришел посетитель. Если браузер не присылает эти сведения, то в статистике это посещение будет выглядеть так, как будто человек набрал URL руками в адресной строке или, что вероятнее, перешел на сайт по сохраненной закладке.

direct (bookmark) пустой referer

В общем, если у вас много посетителей, которые пользуются Safari или Chrome (возможно, другие браузеры на Webkit  тоже подвержены), то вы наверняка не обнаружите в статистике какой-то процент переходов со ссылающихся на вас страниц. Не смертельно, но непорядок. Проблема, кстати, известна с 2008 года, но разработчики не торопятся ее решать. Есть ли за таким поведением какая-то логика — вопрос.

Если у вас Safari, Google Chrome или другой Webkit-based браузер, то можете попробовать все варианты вот на этой ссылке: what is my referer (тут то же самое с target="_blank"). Если не лень — киньте результаты в комментарии.

если не будут передавать

если не будут передавать реферер - на сайтах  защитой от хотлинка, да и многих платниках, будут проблемы

Проверил на Google Chrome

Проверил на Google Chrome 4.1.249.1045 - почти такие же результаты - НЕ передает в случае нажатия правой кнопки мыши. В остальных случаях передает, и при ctrl-click тоже.

Пинг!

[...] Safari, Chrome не передают HTTP_REFERER. Проблема с Webkit браузерами? ... [...]