في وقت لاحق ، راجعت بعض المعلومات ذات الصلة ووجدت أنه من المستحيل الحصول على http_referer في IE من خلال window.location.href أو في IE. أنا حقًا لا أفهم متصفحات IE. العديد من المتصفحات تعمل بشكل جيد للغاية ، لكنها لا تدعمهم. في النهاية ، لا توجد طريقة. لا يمكنني إلا مزيف طريقة HTTP_Referer أو استخدام JS لتشكيلها.
إن تقديم HTTP_REFERER الذي يمكن أن يتعرف عليه IE هو حدث يتم تشغيله بالنقر أو الطلب المقدم بواسطة نموذج النموذج. فيما يلي طريقة ملخصة بناءً على المعلومات عبر الإنترنت:
<script> وظيفة referurl (url) {var isie = (document.all)؟ True: false ؛ if (isie) {var linka = document.createElement ('a') ؛ linka.href = url ؛ document.body.appendchild (linka) ؛ linka.click () ؛ url = "// www.vevb.comتستخدم هذه الطريقة أولاً المستند. لتحديد ما إذا كان المتصفح الحالي هو IE. إذا كان الأمر كذلك ، قم بإنشاء رابط ، ثم قم بتنفيذ حدث OnClick تلقائيًا. إذا لم يكن كذلك ، استخدم JS للقفز. وبهذه الطريقة ، يمكنك الحصول على http_referer عند معالجة الصفحة
يتم اختبار هذه الطريقة في IE ، Firefox ، Safari ، Chrome
2. يستخدم PHP Curl لتشكيل IP و Origin HTTP المرح
PENENTER.PHP
<؟ php $ CH = CURL_INIT () ؛ CURL_SETOPT ($ CH ، CURLOPT_URL ، "http://mydomain.com/ip.php"؛curl_setopt( حد ، curlopt_httpheader ، Array ('x-forwarded-for: 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 (! فارغة ($ _ server ["http_client_ip"])) $ ip = $ _server ["http_client_ip"] ؛ (! فارغة ($ _ server ["remote_addr"]))) $ ip = $ _server ["REMOTE_ADDR"] ؛ else $ ip = "err" ؛ return $ ip ؛} echo "ip:". getClientip (). "<br>" ؛ Echo "Penerer:". $ _server ["http_referer"] ؛