Más tarde, verifiqué información relevante y descubrí que es imposible obtener http_referer en IE a través de Window.location.href o en IE. Realmente no entiendo los navegadores de IE. Muchos navegadores funcionan muy bien, pero simplemente no los apoyan. Al final, no hay forma. Solo puedo fingir el método de origen http_referer o usar JS para forjarlo.
El envío http_referer que IE puede reconocer es un evento activado por clic o una solicitud enviada por un formulario. El siguiente es un método resumido en función de la información en línea:
<script> function referUrl (url) {var isie = (document.all)? true: false; if (isie) {var linka = document.createElement ('a'); linka.href = url; document.body.appendChild (linka); linka.Click ();} más ventana.location = url;} var url = ”// www.vevb.com”; referUrl (url); </script>Este método usa primero el documento. Todo para determinar si el navegador actual es es decir. Si es así, genere un enlace y luego ejecute automáticamente el evento OnClick. Si no, usa JS para saltar. De esta manera, puede obtener http_referer al procesar la página
Este método se prueba en IE, Firefox, Safari, Chrome
2. PHP usa Curl para forjar IP y Origin HTTP Referrer
referente.php
<? Php $ ch = curl_init (); curl_setopt ($ ch, curlopt_url, "http://mydomain.com/ip.php");curl_setopt($ch, curlopt_httpheader, array ('xforwarded-for: 8.8.8.8', 'client-iP: 8.8.8.8'); // construir ipcurl_setopt ($ ch, curlopt_referer, "//www.vevb.com/"); // Construye el origen curl_setopt ($ ch, curlopt_header, 1); $ out = curl_exec ($ ch); curl_close ($ ch); echo $ out;IP.PHP
<? PhpFunction getClientip () {if (! showy ($ _ servidor ["http_client_ip"])) $ ip = $ _server ["http_client_ip"]; else if (! vacía ($ _ servidor ["http_x_forwarded_for"]) $ ip = $ _server ["http_x_x_x_x_for"]] (? getClientip (). "<br>"; echo "referente:". $ _Server ["http_referer"];