我正在尝试将Core 1.0应用程序发布到在IIS Express中本地运行良好的2012R2框。
我得到的只是:
HTTP错误403.14 - 禁止
Web服务器配置为不列出其内容 。目录
在this article from Microsoft中,它只提到通过为网站选择错误的目录来创建403.14 Forbidden错误......但情况并非如此。
但是,VS并不会破坏web.config。并且没有选择“始终复制到服务器”或“内容”(在DDL中),两种选择都缺失。答案 0 :(得分:3)
确保应用程序池上设置的服务帐户/用户凭据有权运行/访问该应用。这是我几次部署到IIS时的问题。
至于包含web.config,请确保在 project.json 文件中包含以下代码。只需指定要包含在发布中的内容。
"publishOptions": {
"include": [
"wwwroot",
"Views",
"appsettings.json",
"web.config"
]
}
答案 1 :(得分:3)
检查应用程序文件夹中是否有web.config。如果IIS文件夹中没有web.config,则它不知道它是ASP.NET Core应用程序,它认为您正在尝试在该文件夹中列出文件。 因此,如果在项目配置中将IsTransformWebConfigDisabled属性设置为true,则在构建Web.config文件时不会在发布文件夹中生成该文件。 因此,在YourProjectName.csproj文件中将IsTransformWebConfigDisabled属性更改为false,如下所示:-
<IsTransformWebConfigDisabled>false</IsTransformWebConfigDisabled>