IIS 7 не вызывает ошибку приложения в Global.asax при переносе приложения HTML в ASP.NET 4.0

Я перевожу HTML-сайт в веб-приложение ASP.Net 4.0. Если кто-то вводит URL-адрес существующей HTML-страницы, я хочу перенаправить его на соответствующую ASP-страницу.

Я уже попробовал ниже предложения, ничего не получилось.

  1. включил пользовательский тег ошибок, который перенаправляет на некоторую страницу asp в web.config - не работает

    enter code here
    <customErrors mode="On">
      <error statusCode="404" redirect="~/Error.aspx" />
    </customErrors>
    enter code here
    
  2. приведенный ниже код под методом Application_Error на странице Global.asax. - не стреляет

    enter code here
    
    void Application_Error(object sender, EventArgs e)
        {
            // Code that runs when an unhandled error occurs
            string fullOrginalpath = Request.Url.ToString();
            string strPathExtn = 
                Request.CurrentExecutionFilePathExtension.ToString();
            if (fullOrginalpath.Contains(".html"))
            {
                Server.ClearError();
                Response.Clear();
                fullOrginalpath = fullOrginalpath.Replace(".html", ".aspx");
                Response.Redirect(fullOrginalpath);
            }           
        }
    enter code here
    
  3. Попробовал наличие тега httpErrors в web.cofig - выдает 500 внутренних ошибок.

1 ответ

Решение

Я думаю, что вы можете посмотреть на модуль IIS URL Rewrite:

https://www.iis.net/downloads/microsoft/url-rewrite

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