参考:
.net core 2.0学习笔记(二):部署到Windows和Liunx系统 - ZuQing - 博客园
使用 IIS 在 Windows 上托管 ASP.NET Core | Microsoft Learn
在 Visual Studio 2017 远程 IIS 计算机上的远程调试 ASP.NET Core
一、安装 SDK, 从下面的链接中找最新的下载:
https://www.microsoft.com/net/download/windows
目前 Windows 64 bit 下最新的是:
二、安装 WindowsHosting:
目前 Windows 64 bit 下最新的是:
当然, 后面可能会出新版, 如果有新版自己去搜索下载。
安装之后, 在 IIS 的模块这里会看到:
反正你看不到 AspNetCoreModule 这个玩意的话, 运行肯定就是有问题的。
应用程序池必须配置为“无托管代码”
后面的发布什么的也比较简单, 就不赘述了。
-------------------------------------------------------------------------------------------------------------------------
出现这个, 先看了事件查看器:
Application 'MACHINE/WEBROOT/APPHOST/YEBMS80' with physical root 'D:\wwwroot\' failed to start process with commandline 'dotnet .\Web.dll', ErrorCode = '0x80004005 : c0000135.
于是直接进 dos 命令行:
开始其实是跳出了一个异常的:
后面 360 提示可以修复, 直接点修复, 再运行那个命令行就可以了。
再关命令行, 重启 iis, 再看网站已能正常访问。
如果 dotnet xxx.dll 也是正常的, 但 IIS 网站就是不正常, 那建议先重启一下服务器。
-------------------------------------------------------------------------------------------------
dotnet xxx.dll 正常,但IIS网站报 HTTP Error 502.5 - Process Failure
通过修改 web.config 正常了:
<aspNetCore processPath="dotnet.exe" arguments=".\API.SSO.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
=》
<aspNetCore processPath="C:\Program Files\dotnet\dotnet.exe" arguments=".\API.SSO.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />