Asp.net Response.Redirect - Неверный реферер - PullRequest
4 голосов
/ 28 июня 2010

У меня есть приложение asp.net, которое я использую для отслеживания трафика.

Я получаю входящего посетителя с нескольких исходных сайтов и перенаправляю посетителя на целевой сайт с помощью Response.Redirect (url);

Проблема в том, что в настоящее время реферер, отображаемый на целевом веб-сайте (после перенаправления i), имеет URL-адрес исходного веб-сайта, а не моего веб-сайта.

как очистить / изменить реферрера перед использованиемthe 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) { } 
            } 
        } 

Спасибо.

Ответы [ 4 ]

2 голосов
/ 28 июня 2010

На странице 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>");
0 голосов
/ 18 июля 2010

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

Некоторые клиенты и антивирусное программное обеспечение удаляют или даже заполняют его ненужными файлами.

0 голосов
/ 01 июля 2010

Как упомянуто 48kloc. Просто нет хорошего способа сделать это. Тоже вниз по дороге и это отстой.

0 голосов
/ 28 июня 2010

Реферер контролируется браузером, так что вы, вероятно, не так уж много можете сделать, чтобы изменить его мнение. Существует хак, который вы можете использовать , но это просто так.

Вы пытались вместо этого выполнить Server.Transfer?

...