Plus tard, j'ai vérifié certaines informations pertinentes et constaté qu'il est impossible d'obtenir http_referer dans IE via window.location.href ou dans IE. Je ne comprends vraiment pas les navigateurs IE. De nombreux navigateurs fonctionnent très bien, mais ils ne les soutiennent tout simplement pas. En fin de compte, il n'y a aucun moyen. Je ne peux que simuler la méthode source http_referer ou utiliser JS pour le forger.
La soumission HTTP_Referer que IE peut reconnaître est un événement déclenché par un clic ou une demande soumise par un formulaire. Ce qui suit est une méthode résumé en fonction des informations en ligne:
<script> Fonction ReferUrl (url) {var isie = (document.all)? true: false; if (isie) {var linka = document.createelement ('a'); linka.href = url; document.body.appendChild (linka); linka.click ();} else window.location = url;} var) url = ”// www.vevb.com”; référentiel (URL); </cript>Cette méthode utilise d'abord le document. tout pour déterminer si le navigateur actuel est IE. Si c'est le cas, générez un lien, puis exécutez automatiquement l'événement onClick. Sinon, utilisez JS pour sauter. De cette façon, vous pouvez obtenir http_referer lors du traitement de la page
Cette méthode est testée dans IE, Firefox, Safari, Chrome
2. PHP utilise Curl pour forger IP et Origin Http référent
référer.php
<? php $ ch = curl_init (); curl_setopt ($ ch, curlopt_url, "http://mydomain.com/ip.php");curl_setopt($ch, curlopt_httpheader, array ('x-forwarded // Construire ipcurl_setopt ($ ch, curlopt_referer, "//www.vevb.com/"); // Construire l'origine curl_setopt ($ ch, curlopt_header, 1); $ out = curl_exec ($ ch); curl_close ($ ch); echo $ out;ip.php
<? phpfunction getClientIp () {if (! vide ($ _ server ["http_client_ip"])) $ ip = $ _server ["http_client_ip"]; else if (! vide ($ _ server ["http_x_forwarded_for"]) $ ip = $ _server (! vide ($ _ serveur ["Remote_addr"])) $ ip = $ _server ["Remote_addr"]; else $ ip = "err"; return $ ip;} echo "ip:". getClientip (). "<br>"; echo "référer:". $ _Server ["http_referrer"];