Google 404 и пользовательские страницы ошибок.NET

У меня есть веб-сайт ASP.NET 2.0 с пользовательской страницей 404. Когда контент не найден, сайт обслуживает пользовательскую страницу 404 с добавлением строки запроса aspxerrorpath=/mauro.aspx. Сама страница 404 обслуживается с HTTP- статусом 200. Чтобы попытаться решить эту проблему, я добавил

    protected void Page_Load(object sender, EventArgs e)
    {
        Response.StatusCode = 404;
    }

Я добавил виджет Google и у меня есть две проблемы с ним. В Internet Explorer 7 он не отображает, где он должен. Если я добавлю его в контент, я получу "неизвестную ошибку" на строчке 226 символа 79 или около того; если я добавлю его в раздел заголовка, над содержимым появятся поля поиска. В Firefox все работает нормально.

Итак, мои проблемы:

  1. Как сделать виджет встроенным?
  2. Как сделать так, чтобы страница ошибки отображалась как 404 с исходным именем и путем запрашиваемого файла, чтобы при запросе mauro.aspx я получал контент для страницы 404, но с URL-адресом mauro.aspx? (Я предполагаю, что мне придется сделать некоторые перезаписи URL в файле begin_request global.asax, но я хотел бы, чтобы это было подтверждено, прежде чем я сделаю что-нибудь глупое.)

2 ответа

Решение

Я обработал 404, выполнив это в файле global.asax

protected void Application_BeginRequest(object sender, EventArgs e)
{
    string url = Request.RawUrl;
    if ((url.Contains(".aspx")) && (!System.IO.File.Exists(Server.MapPath(url))))
    {
        Server.Transfer("/Error/FileNotFound.aspx");
    }
}

Теперь, если кто-нибудь может помочь мне с виджетом Google, это было бы здорово!

В ASP.NET 3.5 SP1 появился новый режим перенаправления, который теперь можно использовать, чтобы он не перенаправлял. Он показывает страницу с ошибкой, но сохраняет тот же URL:

"Также хорошо для перенаправлений URL. Если вы установите для redirectMode в web.config значение"responseRewrite", вы можете избежать перенаправления на пользовательскую страницу ошибки и оставить URL-адрес в браузере нетронутым".

Другие вопросы по тегам