IIS 6, HTML-файл / расширение, urlrewriting - PullRequest
1 голос
/ 12 февраля 2012

Я использую переписывание URL на своем сайте (ASP.NET 4.0 / IIS6), вместо aspx я использую html.Все как описано здесь: IIS 6 выполняет html как aspx .Проблема в том, что когда у меня есть какой-либо настоящий файл .html (файл html существует в папке сайта), он не открывается в веб-браузере.Это способ решить эту проблему?Спасибо!

1 Ответ

0 голосов
/ 05 октября 2012

Вы можете использовать собственный httpmodule следующим образом:

public class CheckRealHtmlFile : System.Web.IHttpModule
{
    public void Dispose()
    {
    }
    public void Init(System.Web.HttpApplication context)
    {
        context.BeginRequest += new EventHandler(context_BeginRequest);
    }
    void context_BeginRequest(object sender, EventArgs e)
    {
        System.Web.HttpApplication app = sender as System.Web.HttpApplication;
        if (app != null)
        {
            System.Text.RegularExpressions.Regex rHtml = new System.Text.RegularExpressions.Regex(@"\.html$", System.Text.RegularExpressions.RegexOptions.IgnoreCase);
            if (rHtml.IsMatch(app.Context.Request.Url.AbsolutePath) && !System.IO.File.Exists(app.Context.Server.MapPath(app.Context.Request.Url.AbsolutePath)))
            {
                //Execute your html -> aspx logic
            }
            else
                return;
        }
        else
            return;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...