如何检测用户在访问PHP之前来自哪个站点?如何检测用户来自PHP之前的网站?
回答
尝试这种情况:
$_SERVER['HTTP_REFERER']
有关详细信息,请参阅HTTP referrer:
引荐,或HTTP引用-也 由发生作为HTTP报头中的常见的拼写错误 引荐已知 字段标识,从点 视图的互联网网页或 资源,网页的地址 (通常URL,更一般的 URI或i18n更新的IRI)链接到它的 资源。 通过检查 引用者,新页面可以看到请求来自的 。
你可以检查在Referer HTTP Header:
echo $_SERVER['HTTP_REFERER'];
但是注意,Referer的是浏览器,这意味着发:
- 它可以禁用(这不是强制性的,而仅仅是一个其它附加信息,浏览器可以发送)
- 它可以伪造(即任何人都可以发送任何东西 - 甚至是一些SQL注入,XSS或注射,例如)
所以,你可以使用引荐到您的网站上提供了一个额外的功能,但你必须确保您的网站不依赖于它:即使Referer不存在,您的应用程序仍然必须工作。
+1好点。 – 2010-02-22 20:25:15
@Andrew:作为最终用户,我讨厌当我在网站上有什么东西不只是工作,因为引荐在我的浏览器禁用*(这有时会发生,因为我经常禁用它来测试一些东西;有时在我开发的网站中)* – 2010-02-22 20:28:03
echo $_SERVER['HTTP_REFERER'];
这不是完全可靠的,可以被欺骗,但一般来说,它将填充用户单击以获取脚本的URL。
上面的提示是正确的,但请记住,用户可以让他/她的浏览器不发送此信息,否则他们可能会混淆此信息并发送虚假数据。
由于@Andrew Hare声称in his answer,获取HTTP_REFERRER服务器值(这是作为HTTP请求的一部分发送的标头)的值将告诉您网站浏览器是最后一个。
应注意什么,但问题在于,它是完全可能的,这头/服务器变量将没有任何价值,对于一些合法的原因,有些是:
- 在URL中键入的用户在同一窗口中的网站
- 用户在同一个窗口中打开书签
- 用户只需打开浏览器,做的事情之一以上
所有现代单片机的e在同一事物上是真正的变体,这种情况下使用相同的浏览器窗口访问另一个站点,但没有通过点击文档中的链接来引导它们,重定向或其他操作在你之前的历史页面提示。
- 1. 该网站如何检测来自不同域的用户当前网址?
- 2. 如何检测使用PHP查看我们网站的用户的MAC地址?
- 3. 如何检测Joomla网站?
- 4. 在PHP中检测Ajax并确保请求来自我自己的网站
- 5. 从php网站检测用户的驱动程序
- 6. 如何检测用户访问的外部网站
- 7. 检测用户在访问我的网站前在Rails中访问的网址
- 8. 如何分析来自我网站用户评论的信息?
- 9. UWP,如何检测用户之前登录过?
- 10. 如何在用户关闭窗口之前检测到修改
- 11. 检测用户是否来自Smarty中的子域PHP
- 12. 如何检测您网站的域名?
- 13. 如何检测网站的“所有者”?
- 14. 如何检测来自使用PHP的设备的请求?
- 15. 如何检测用户来自Javascript/Angularjs的URL?
- 16. 如何检测来自用户的错误输入vb
- 17. 如何检测当前网站是否在虚拟目录中
- 18. 如何检测应对我网站内容的自动代理?
- 19. 网站自动检测SHTML页面
- 20. 如何检测来自客户端机器的当前共享点页面?
- 21. PHP - 如何检测用户位置
- 22. 如何检测网站是否超载?
- 23. 主要网站如何检测时区?
- 24. I18n网站:我如何检测语言?
- 25. 如何使用javascript检测网站路径中的网段数?
- 26. Python脚本来检测恶意软件网站或程序来检测网站上的恶意软件?
- 27. 如何自动验证用户的Facebook帐户,提供他们已连接到我的网站之前
- 28. Java Servlets - 如何检测用户是否来自移动设备?
- 29. 如何检测用户来自Web或从Android | iPhone | iPad | iPod
- 30. 来自ASP.NET网站的静态网站
你想找的是单词'referrer'谷歌与PHP,应该是有关禁用和欺骗很简单 – Earlz 2010-02-22 20:16:55