あなたは、このようなカスタム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;
}
}
「また、あなたが(あなたがURLの書き換えている場合など)が存在しないファイルに拡張子をマップしようとしている場合ことを注意することが重要ですファイルが存在するかどうかを確認するボックスをオフにしてください。 " –
はい、私は、問題は、ファイル(html)が存在するときにブラウザで開く必要があるということです。 – ihorko
あなたはそれがWebブラウザで開かないと言う。代わりにダウンロードされたか、まったく応答しないのか、サーバーエラー(404/500)が発生するのですか? –