【问题标题】:Set Referer header in asp.net在asp.net中设置Referer头
【发布时间】:2011-12-16 21:00:50
【问题描述】:

 这应该是一个简单的问题,但我一直无法解决。我试图在重定向 HttpResponse 对象的页面之前更改 Referral 标头。我知道这可以在 HttpWebResponse 中完成,但无法使其适用于标准 Page.Response。
我试图将引荐来源标头设置为看起来像是来自我网站上的临时页面(这是用于外部系统的分析跟踪)。
这可以吗??
我尝试使用下面的代码(以及 Response.AppendHeader 和 Response.AddHeader 等变体),但是 Referer 始终显示为发起请求的页面。

      Response.Headers.Add("Referer", "http://test.local/fromA");
      Response.Redirect(HttpContext.Current.Request.Url.AbsoluteUri);

如果不是通过.net,这可以通过js来完成吗?
谢谢!

【问题讨论】:

标签: c# asp.net


【解决方案1】:

Referer 由客户端控制(和发送)。你不能在服务器端影响它。您可能会发出一些 JavaScript 来让客户端执行此操作 - 但它可能被认为是一个安全漏洞,所以我不会指望它。

【讨论】:

  • 使用 JS 更改引用者也是一个安全漏洞。所以在大多数浏览器中是不允许的。
【解决方案2】:

referrer 由客户端设置,而不是服务器。包含在请求中而不是响应中很有用,因为它指向请求来自的 URL。

【讨论】:

    猜你喜欢
    • 2018-11-30
    • 2012-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-27
    • 1970-01-01
    相关资源
    最近更新 更多