Bea*_*ore 10 c# asp.net iis asp.net-core
我正在尝试将Core 1.0应用程序发布到在IIS Express中本地运行良好的2012R2盒子.
我得到的只是:
HTTP错误403.14 - 禁止
Web服务器配置为不列出此目录的内容.
在Microsoft的这篇文章中,它只提到通过为站点选择错误的目录来创建403.14 Forbidden错误......但事实并非如此.
但是,VS并不会愚弄web.config.并且没有选择"复制到服务器始终"或"内容"(在DDL中),两个选项都缺失.
确保在应用程序池上设置的服务帐户/用户凭据有权运行/访问应用程序。这是我几次部署到 IIS 时遇到的问题。
至于包含 web.config,请确保在project.json文件中包含以下代码。只需指定要包含在发布中的内容。
"publishOptions": {
"include": [
"wwwroot",
"Views",
"appsettings.json",
"web.config"
]
}
Run Code Online (Sandbox Code Playgroud)
小智 6
检查您的应用程序文件夹中是否有 web.config。如果文件夹中没有 web.config,IIS 不知道它是 ASP.NET Core 应用程序,它认为您正在尝试列出该文件夹中的文件。因此,如果将项目配置中的 IsTransformWebConfigDisabled 属性设置为 true,则会导致构建时不会在发布文件夹中生成 Web.config 文件。因此,在 YourProjectName.csproj 文件中将 IsTransformWebConfigDisabled 属性更改为 false,如下所示:-
<IsTransformWebConfigDisabled>false</IsTransformWebConfigDisabled>
Run Code Online (Sandbox Code Playgroud)