IIS7部署MVC4网站在本机正常,发布(部署)报403.14错误

  • Post author:
  • Post category:其他



IIS7部署MVC4网站,在本机一起正常,直接访问端口号能显示默认网页,但发布却一直报403.14错误。


web服务器被配置为不列出此目录的内容。


1、尝试过:控制面板 – 管理工具 – Internet 信息服务(IIS)管理器 – 目录浏览,选择启用即可。结果只是列出内容。没有达到显示默认网页的效果。

2、尝试设置runAllManagedModulesForAllRequests,现象依旧。

<system.webServer>

<modules runAllManagedModulesForAllRequests=”true” />

</system.webServer>

3、参考http://blog.csdn.net/lingxyd_0/article/details/43154867

发现服务器上安装的.netframework 不是4.5,而是4.5.1。

果断将4.5.1卸载,重新安装dotnetfx45_full_x86_x64.exe。重新注册iis,32位的和64位的都注册一下。

4、用之前可以的配置文件,居然可以了。

5、

<system.webServer>

<validationvalidateIntegratedModeConfiguration=”false”/>

<modules runAllManagedModulesForAllRequests=”true” />

</system.webServer>

在web.config增加<modules runAllManagedModulesForAllRequests=”true” />



结论:

1、实测可用的web.config配置。

2、后续遇到这类问题,可以尝试安装.netframework 4.5。


<?xml version="1.0"?>
<!--
  有关如何配置 ASP.NET 应用程序的详细信息,请访问
  http://go.microsoft.com/fwlink/?LinkId=301880
  -->
<configuration>
  <appSettings>
  </appSettings>
  <!--
    有关 web.config 更改的说明,请参见 http://go.microsoft.com/fwlink/?LinkId=235367。

    可在 <httpRuntime> 标记上设置以下特性。
      <system.Web>
        <httpRuntime targetFramework="4.5" />
      </system.Web>
  -->
  <system.web>
    <!-- <authentication mode="None"/> -->
    <compilation debug="true" targetFramework="4.5"/>
    <httpRuntime/>
    <pages controlRenderingCompatibilityVersion="4.0"/>
    <!-- <customErrors mode="Off"/>  -->
  </system.web>
  <system.webServer>
    <validation validateIntegratedModeConfiguration="false"/>
    <modules runAllManagedModulesForAllRequests="true" />
  </system.webServer>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-5.0.0.0" newVersion="5.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-1.5.2.14234" newVersion="1.5.2.14234"/>
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>





版权声明:本文为newtelcom原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。