我已经将我的asp.net 3.5应用程序升级到4.0并添加了对路由的支持(添加的dll被制作为“copy locaL”)。它在当地完美运作。部署到IIS7后(使用VS2010中的FileSystem发布方法),当我尝试访问基本URL(mysite.com)时,它给出了403“访问被拒绝”。如果我尝试去任何路由网址(mysite.com/resources),它会给我一个404错误“文件或目录未找到”。
我已删除web.config中的“授权”部分。在应用程序池conf中为托管管道模式选择“集成”。安装了Http Redirection
以下是我的Global.ascx
文件
routes.MapPageRoute(
"default", // Route name
"{tab}", // URL
"~/member/{tab}.aspx", // Physical ASPX file
false,
new RouteValueDictionary(new {tab = "Default"})
);
routes.MapRoute(
null,
"{controller}/{action}/{id}",
new {
action = "Index",
id = UrlParameter.Optional
}
);
更新:直接访问像mysite.com/member/Default.aspx
这样的aspx页面没有任何问题。
以下是详细的错误消息:
**HTTP Error 403.14 - Forbidden
The Web server is configured to not list the contents of this directory.**
Module DirectoryListingModule
Notification ExecuteRequestHandler
Handler StaticFile
Error Code 0x00000000
看起来请求由错误的Handler处理。
我在这里想念的是什么?提前谢谢。