В конечном счете, мне нужно знать, в каком домене находится один из моих файлов javascript. Я прочитал и испытал из первых рук, что $_SERVER['HTTP_REFERER']
ненадежный. Одна из первых трех обработанных вами браузеров/компьютеров не отправила HTTP_REFERER
, и я знаю, что она может быть подделана. Я применил другое решение, используя два метода javascript.
document.referrer
И
window.location.href
Я использую бывший, чтобы получить URL окна, где кто-то нажал на одну из моих ссылок. Я использую первый, чтобы узнать, в какой домен включен мой javascript-файл. Я тестировал его немного до сих пор, и он очень хорошо захватывает URL-адреса браузера без икоты. Мой вопрос: надежны ли два JavaScript-метода? Будут ли они возвращать URL-адрес из браузера каждый раз или есть какие-то оговорки, как использование $_SERVER['HTTP_REFERER']
, с которым я еще не сталкивался?
'document.referrer' использует ту же информацию от клиента, что и' HTTP_REFERER', поэтому они оба могут быть подделаны одинаково. – Barmar
Ни один из них не покажет, где находится файл Javascript. 'window.location.href' - это URL-адрес веб-страницы с использованием JS-файла. 'document.referrer' - это страница, на которой была ссылка, с которой они следовали, чтобы добраться туда. – Barmar
Я не беспокоюсь о том, что это подделка, а просто не имея ее. Кроме того, я думал, что HTTP_REFERER был передан как заголовок http? Не открывается ли window.location.href непосредственно из строки url? – Gilberg