Позже я проверил некоторую соответствующую информацию и обнаружил, что невозможно получить http_referer в IE через window.location.href или в IE. Я действительно не понимаю браузеры. Многие браузеры работают очень хорошо, но они просто не поддерживают их. В конце концов, нет никакого пути. Я могу только подделать метод источника http_referer или использовать JS для его подготовки.
Представление HTTP_REFERER, которое может распознать, является событием, запускаемое кликом или запросом, представленным формой. Ниже приведен метод, обобщенный на основе онлайн -информации:
<script> refururl (url) {var isie = (document.all)? url = ”// www.vevb.com”; referrl (url); </script>Этот метод сначала использует документ. Все, чтобы определить, является ли текущий браузер IE. Если это так, сгенерируйте ссылку, а затем автоматически выполните событие OnClick. Если нет, используйте JS, чтобы прыгнуть. Таким образом, вы можете получить http_referer при обработке страницы
Этот метод тестируется в IE, Firefox, Safari, Chrome
2. PHP использует реферат Curl для IP и Origin HTTP
Реферат.php
<? php $ ch = curl_init (); curl_setopt ($ ch, curlopt_url, "http://mydomain.com/ip.php");curl_setopt($ch, curlopt_httphader, Array ('x-foreded-for: 8.8.8', 'client-IP: 8.8.8.8 // Construct ipcurl_setopt ($ ch, curlopt_referer, "//www.vevb.com/"); // Создание исходного curl_setopt ($ ch, curlopt_header, 1); $ out = curl_exec ($ ch); curl_close ($ ch); echo $ out;ip.php
<? phpfunction getClientip () {if (! ement ($ _ server ["http_client_ip"])) $ ip = $ _server ["http_client_ip"]; else if (! $ _ server ["http_x_forwarded_for"]) $ ip = $ _server ["http_x_forwarded (! ement ($ _ server ["remote_addr"])) $ ip = $ _server ["remote_addr"]; else $ ip = "err"; return $ ip;} echo "ip:". getClientip (). "<br>"; Echo "Referer:". $ _Server ["http_referer"];