错误:VS 2017 ASP.NET 核心应用发布到 IIS [同一台机器]
Bug: VS 2017 ASP.NET Core app published to IIS [same machine]
首先在 VS 2017 中创建一个新项目,模板为 ASP.NET 核心(和个人身份验证)没有 web.config; yet 在将应用程序发布到 C:\inetpub\wwwroot 时添加(在 Window 服务器 2016 的新安装和同一台机器上的 VS 上)。
发布后,无法打开网页,显示“500 - 内部服务器错误”页面。单击左侧面板中的 mySite 后进入 IIS 管理器,尝试单击托管网站中间面板中的任何内容都无法打开,并出现此错误:
如您所见,它没有提供任何有关实际错误的信息。
所以不确定为什么要查找 \?\C:
以获得 web.config 文件?我相信如果我能得到帮助解决这个网页应该加载;因为它确实在开发中加载。如前所述,此问题仅在部署基本 ASP.NET 核心模板时发生;但它也对我以前使用 VS 2015 社区创建的网站做同样的事情移植到 VS 2017(需要 VS 对其进行更新)
web.config文件,仅在发布的应用文件夹中,不在开发项目文件夹中,是:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="dotnet" arguments=".\Laier-IT.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
</system.webServer>
</configuration>
此类问题是未针对 .Net Core 配置的 IIS 配置的典型问题。
为了在 IIS 中托管 .Net Core 应用程序,必须安装 .NET Core Windows 服务器托管包。
有关安装 .Net Core Windows 服务器托管捆绑包的详细说明,请查看 Microsoft documentation on installing .Net Core Windows Server Hosting。
此 document 还提供了有关将 .Net Core 部署到 IIS 和其他各种 HTTP 服务器的大量信息。
此外,您需要在应用程序池设置中将 .Net CLR 设置为无托管代码:
首先在 VS 2017 中创建一个新项目,模板为 ASP.NET 核心(和个人身份验证)没有 web.config; yet 在将应用程序发布到 C:\inetpub\wwwroot 时添加(在 Window 服务器 2016 的新安装和同一台机器上的 VS 上)。
发布后,无法打开网页,显示“500 - 内部服务器错误”页面。单击左侧面板中的 mySite 后进入 IIS 管理器,尝试单击托管网站中间面板中的任何内容都无法打开,并出现此错误:
如您所见,它没有提供任何有关实际错误的信息。
所以不确定为什么要查找 \?\C:
以获得 web.config 文件?我相信如果我能得到帮助解决这个网页应该加载;因为它确实在开发中加载。如前所述,此问题仅在部署基本 ASP.NET 核心模板时发生;但它也对我以前使用 VS 2015 社区创建的网站做同样的事情移植到 VS 2017(需要 VS 对其进行更新)
web.config文件,仅在发布的应用文件夹中,不在开发项目文件夹中,是:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="dotnet" arguments=".\Laier-IT.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
</system.webServer>
</configuration>
此类问题是未针对 .Net Core 配置的 IIS 配置的典型问题。
为了在 IIS 中托管 .Net Core 应用程序,必须安装 .NET Core Windows 服务器托管包。
有关安装 .Net Core Windows 服务器托管捆绑包的详细说明,请查看 Microsoft documentation on installing .Net Core Windows Server Hosting。
此 document 还提供了有关将 .Net Core 部署到 IIS 和其他各种 HTTP 服务器的大量信息。
此外,您需要在应用程序池设置中将 .Net CLR 设置为无托管代码: