【问题标题】:Asp.net Response.Redirect - Incorrect referrerAsp.net Response.Redirect - 不正确的引荐来源网址
【发布时间】:2011-03-09 06:15:17
【问题描述】:

我有一个用于流量跟踪的 asp.net 应用程序。

我从多个源网站获得了一个访问者,并使用 Response.Redirect(url) 将访问者重定向到目标网站;

问题是目前显示给目标网站的引用者(在我重定向之后)是源网站的 url,而不是我的网站。

在使用 Response.Redirect 之前如何清除/更改引用?

这是我的 Default.aspx 代码:

public partial class _Default : System.Web.UI.Page 
    { 
        protected void Page_Load(object sender, EventArgs e) 
        { 
            if (!IsPostBack) 
            { 
                try 
                { 

                    Response.Redirect(url); 
                } 
                catch (System.Threading.ThreadAbortException) { } 
            } 
        } 

谢谢。

【问题讨论】:

    标签: c# asp.net http-headers response.redirect referrer


    【解决方案1】:

    从 ASPX 页面尝试以下解决方案之一:

    1.. 尝试从代码隐藏中将元刷新标签添加到您的 aspx 页面的标题。

    Response.AppendHeader("Refresh", "0; url=http://targetsite.com");
    

    2.. 将 Javascript 从代码隐藏添加到您的页面

    Page.RegisterStartupScript("myScript", "<script language=JavaScript>window.location = "http://targetsite.com";</script>");
    

    【讨论】:

    • 两个都试过了。它有帮助,但仍然有一些流量获得了错误的推荐人。
    【解决方案2】:

    referer 由浏览器控制,因此您可能无法做很多事情来改变它的想法。有a hack you can put to use,但仅此而已。

    您是否尝试过使用 Server.Transfer 代替?

    【讨论】:

    • Server.Transfer 在浏览器中维护原始 URL。我想重定向。
    【解决方案3】:

    就像提到的 48klocs。只是没有一个好的方法可以做到这一点。也一直在路上,很糟糕。

    【讨论】:

      【解决方案4】:

      http://en.wikipedia.org/wiki/HTTP_referrer

      一些客户端和杀毒软件会删除甚至填充垃圾。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-05-14
        • 2011-07-15
        • 2015-05-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多