0

asp.net Web サイトで URL ルーティングを使用しています。colde を glocal.asax Application_Start event に入れました。

Application_Start(object sender, EventArgs e) 
    {
        // Code that runs on application startup
        RouteTable.Routes.MapPageRoute("routedetail",
      "alllist/special/{Name}",
      "~/sub/mydetail.aspx");

        RouteTable.Routes.MapPageRoute("routelist",
            "alllist/special",
            "~/sub/mylist.aspx");


        RouteTable.Routes.MapPageRoute("routehtml", "alllist/myhtml.html", "~/sub/to.aspx");
    }

私のローカル開発と iis7
ではすべて問題ありません。エラーはオンライン ホスティングにあります。「routehtml」が機能しません。アクセスが拒否されました。

4

2 に答える 2

0

IIS 7 アプリケーション プールがホスト サーバー上で統合モードになっていることを確認することをお勧めします。そうでない場合は機能しません。必要はありませんが、Application_Start イベントの先頭で RouteExistingFiles プロパティを false に設定することもできます。

于 2012-09-23T12:31:29.513 に答える
0

それをglobal.asaxに入れてみてください

void Application_BeginRequest(object sender, EventArgs e)
{
   HttpApplication app = sender as HttpApplication;
   if(app.Request.Path.IndexOf("FriendlyPage.html") > 0)
   {
       app.Context.RewritePath("/UnfriendlyPage.aspx?SomeQuery=12345");
   }
}
于 2012-09-23T11:38:03.407 に答える