【问题标题】:Should Request.UrlReferrer be null in Page_Load when the page came from another site?当页面来自另一个站点时,Page_Load 中的 Request.UrlReferrer 是否应该为空?
【发布时间】:2009-08-11 03:17:56
【问题描述】:

当页面来自其他站点时,Page_Load 中的 Request.UrlReferrer 是否应该为空?

如何检查页面的来源?来自谷歌,雅虎?

它不是来自书签页面或任何东西,它只是从另一个站点重定向到此页面的链接。
我知道这不是检查页面来源的可靠方法,但这不是目的。用户实际上无法输入 URL
谢谢,

我的解决方案是使用 js 将上一页的整个 URL 发送到目标页面,并检查我感兴趣的参数

【问题讨论】:

  • 如果目的不是检查页面来自哪里,那么目的是什么?
  • 您的解决方案应该是不在问题中的答案。

标签: c# asp.net url referrer


【解决方案1】:

浏览器不需要发送它,有些允许用户出于安全目的禁用它发送。此外,如果有人关注了书签,则不会设置它。

【讨论】:

    【解决方案2】:

    就像其他人所说的那样......它不可靠。

    也许设置一个谷歌分析帐户,他们提供了大量关于您的访问者的信息。

    看看Google Analytics

    【讨论】:

    • UrlReferrer 从与谷歌分析相同的 HTTP 标头中获取信息。如果此标头不存在(即 UrlReferrer 为空),GA 也不会有任何信息。
    • 我明白这一点...我只是想提供一个选项,以便 OP 可以跟踪一些访问者的详细信息。
    【解决方案3】:

    Request.UrlReferrer 并不总是设置。不靠谱。

    【讨论】:

      【解决方案4】:

      引用 url 不是检查用户必然来自哪里的可靠方法。如果有人简单地输入一个 URL,或者点击他们的书签之一,那么referrer 将是空的。

      引用标头实际上取决于用户使用的网络浏览器的行为,以及它是如何设置的。

      【讨论】:

        【解决方案5】:

        UrlReferrer 不可靠。您可以使用google webmaster tools 了解用户从 google 访问您的页面的次数

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-01-13
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-01-26
          • 2017-12-02
          相关资源
          最近更新 更多