WebKit иногда не передаёт Referer
Так вот, оба браузера построены на библиотеке Webkit и оба грешат тем, что не передают HTTP_REFERER.
На самом деле передают, но не всегда, что еще больше запутывает ситуацию. Если человек просто нажмет на ссылку, то реферер будет передан серверу, если откроет новое окно или вкладку «альтернативным» нажатием (на Маке это cmd-click или нажатие средней кнопки), то тоже передастся, а вот если нажать правой кнопкой (или ctrl-click), то нет.
Причём, пятый Хром ведёт себя так же. Ненависть. Багу уже несколько лет, разработчикам он известен, но они его не исправляют.
Действительно не передает.
Баг проявляется в большем числе случаев, чем это написано на приведенной странице.
Referrer передается серверу (в http-заголовке), но не записывается в переменную JavaScript’а document.referrer в том случае, если делается http-редирект (например, переходы с поиска Яндекса ;)).
Для development-версии (5.x) ошибка исправлена (а раньше была исправлена и для development-версии 4.x), для релиза — не исправлена (то есть не работало в 3.x, сейчас не работает и в 4.x).
Тестовая страница:
http://support.li.ru/tmp/chrome-ref-fail.html
В нормальных браузерах после перехода по обеим ссылкам будет показан адрес ссылающейся страницы в двух строках. В Chrome 4 строка «JavaScript referrer» будет пустой
В пятой версии при открытии ссылки в новом окне или вкладке (именно вручную через контекстное меню правой кнопкой) во всех случаях referrer не передается. А вот если кликнуть по ссылке с нажатым shift или ctrl, то передается.
может это фича, а не баг?
Комментарий для vkv.livejournal.com:
Странная какая-то фича. Неудобная и неоправданная.
Комментарий для Евгения Степанищева:
«ctrl-click» — это нажатие правой кнопкой мыши и выбор «Open link in new tab» в меню?
В опере, если открывать ссылку кликом колёсика мышки, то тоже не передаётся. Может это фича?
Комментарий для mkal.livejournal.com:
эт только голосованием можно решить, я голосую за фичу
Комментарий для mkal.livejournal.com:
Действительно, в Опере Ctrl + Shift + клик передаёт Referer, а кликом колесом — нет.
Лично я только колесом и пользуюсь.
Комментарий для wiktar.com:
Нет, это клик мышью при зажатом ctrl.
Комментарий для mkal.livejournal.com:
Однако.
Это фича. Причём очень правильная. С какого, собственно, хрена он должен передавать, если я явно начинаю новую навигацию?
Комментарий для jankkhvej.blogspot.com:
Если бы это была фича, то с другими похожими действиями реферер тоже не передавался бы.
На реферерах очень многое держится в интернете, в плане рекламы.
Комментарий для Евгения Степанищева:
Действия похожие, да не те.
Потому я и не хочу, в основном, чтобы они передавались, начиная новую навигацию. Реклама должна умереть. Пусть ищут другие способы заработка в интернете.
Комментарий для jankkhvej.blogspot.com:
Вы неожиданно стали какие-то очень неумные вещи говорить. Что значит «пусть»? Реклама умрёт, умрёт с ней и масса замечательных сайтов.