.net core 项目发布IIS实战总结+troubleshooting

1. 服务器环境配置:下载正确的Runtime和 .NET Core Hosting Bundle

这一步一定要选对版本号,否则会出现502.5错误。首先查看自己机器上(开发机)的.net core sdk版本:

我的版本号是2.2.101

然后到这里https://dotnet.microsoft.com/download/dotnet-core,点击自己的大版本进入

在打开的页面往下拉,找到自己的小版本,下载对应的 Runtime & Hosting Bundle
image.png

在服务器上安装下载好的文件。

2. 服务器建立IIS站点,与平常站点无异;但是应用程序池要选无托管代码

image.png

3. 工程设置

  • 检查发布json文件,尤其是数据库连接字符串是否能在服务器上连接成功


    image.png
  • 发布设置,选择本地文件发布


    image.png

    image.png

4. 发布好了以后上传服务器即可

trouble shooting

.net core iis 托管(其实不能叫托管了,对于.net core项目iis只是起到一个转发作用,类似nginx)会出现很多莫名奇妙的错误,最常见的是502.3,需要一个一个排查

  1. 首先最重要的一点,如果iis启动失败,在项目目录下控制台输入dotnet 你的工程名.dll看看项目能否启动,若启动不了肯定是项目的问题了。
  2. 如果能启动,但IIS启动错误,首先检查目录下的web.config文件,因为控制台不用这个文件,IIS要用到:


  
    
      
        
      
      
      
        
          
          
        
      
    
  

首先打开日志:stdoutLogEnabled="true"
然后尝试指定.netcore路径:将改为
然后如果项目能启动了,但是有错误,查看log发现问题。
如果出现502 badgateway,可以在项目csproj文件中加入一句话试试

 
   //.....
    false
  

以上就是我经历过的所有IIS发布问题

你可能感兴趣的:(.net core 项目发布IIS实战总结+troubleshooting)