部署MVC4 .net 4.5网站到IIS7禁止403



我正试图将网站部署到IIS web服务器,但我一直得到403禁止错误。我已经尝试了这个问题的所有解决方案,但无济于事,所以我想知道还有什么可能导致403

当我用相同的应用程序池将不同的网站发布到同一文件夹时,它将运行,两个网站之间唯一的区别是不能工作的是。net 4.5和。net 4

有没有人有任何想法可能导致网站抛出一个403 -我已经检查了事件查看器,似乎没有显示

在尝试并失败了很多事情之后,我发现这是由于MVC路由并将以下行添加到我的web配置中似乎已经修复了它:

<modules runAllManagedModulesForAllRequests="true"></modules>

把这个放到你的网页里。配置文件:

<system.webServer>
  <modules>
    <remove name="UrlRoutingModule-4.0" />
    <add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="" />
  </modules>

也复制到IIS的bin文件夹中任何丢失的dll,它抱怨(如。System.Web.Http)。在VS中将它们设置为copylocal=true,以防止将来出现此错误。

这个问题的另一个答案(

<modules runAllManagedModulesForAllRequests="true"></modules>    

)一直运行所有模块。根据这个博客,它太激烈,会导致错误和慢速:http://www.britishdeveloper.co.uk/2010/06/dont-use-modules-runallmanagedmodulesfo.html

最新更新