.Net Core WebApi部署到Windows服务器上的步骤

2020-03-16 18:05:10刘景俊

  然后找到你发布的文件夹,拷贝该文件夹到服务器上。

  拷贝到服务器上,重命名为项目名称,便于区分。

  内容如下。

三、程序部署

  我这里有两种部署方法,第一种是执行命令行运行,第二种是通过IIS部署。推荐使用第二种常用的IIS部署方式,第一种作为了解使用,当然你要用也是可以的。

第一种方式执行命令行:

  按住Shift键不送,鼠标右键空白处,弹出的右键菜单有【在此处打开命令窗口】,点击它打开命名窗口。

  会发现我们cmd的路径直接在该文件夹里,然后执行下面的命令(FirstApi是你的项目名,也就是上图中FirstApi.dll文件)。

dotnet FirstApi.dll

  会发现有一个地址,监听本地的5000端口。

  然后输入该地址就能访问了。诶,怎么内部错误了 o(゚Д゚)っ!

  看一下我们的命令窗口,原来是缺少文件。这个文件是Swagger生成的xml注释文件,vs发布的时候没有包含在里面,所以我们要手动将该文件拷过来。

  找到该xml文件拷贝到服务器文件夹下。

  重新运行,访问地址就能看到了。但这个是localhost本地的,我们想要在外网访问需要改一下代码(当然你也可以用反向代理)。

  打开我们的项目,点击Program文件。

  在箭头所指的位置加入图中的代码,5555是你自己指定的端口。

  加入后Program类文件代码如下。

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Logging;

namespace FirstApi
{
 public class Program
 {
  public static void Main(string[] args)
  {
   CreateWebHostBuilder(args).Build().Run();
  }

  public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
   WebHost.CreateDefaultBuilder(args).UseUrls("http://*:5555")
    .UseStartup<Startup>();
 }
}