在centos7系统中部署使用asp.net core 5.0开发的WebAPI项目

     重点:在centos中部署WebAPI项目不需要安装nginx;而部署Web项目需要使用nginx作反向代理。

  1. 在centos中需要安装 .net core 5.0 的 runtimes运行时环境(如果使用centos开发 .net core项目就需要安装 .net core SDKS包括开发环境和运行时环境)。
    // 安装.net core 5.0 运行时环境
    sudo dnf install aspnetcore-runtime-5.0
    
    // 验证是否安装成功
    sudo dotnet --info

     

  2. 用FolderProfile(文件)发布asp.net core 5.0的webapi程序,目标框架是net5.0,目标运行时选择可移植,进行保存并发布。点击编辑按钮可以进行修改。

     

  3. 将生成的文件夹(例如:publish文件夹) 可以使用Xftp工具上传到Centos服务器任何的位置。
  4. 执行dotnet WebApiDemo.dll --urls http://*:5000命令,出现以下提示说明webapi服务已经运行,在浏览器访问http://localhost:5000即可。
    dotnet WebApiDemo.dll --urls http://*:5000

  5. 出现如上图的 warn 警告是因为项目配置了 HTTPS,如果想要去掉只要注释掉Startup.cs文件中的app.UseHttpsRedirection()。以及删除launchSetting.json中的https://localhost:5001即可。

  6. 注意centos7防火墙的问题,如果至此无法访问可以查看防火墙是否开启,如果开启需要暴露5000端口。

  7. 无法访问的问题:默认的localhost只能本地访问,需要在代码中指定:WebHost.CreateDefaultBuilder(arg).UseUrls("http://*:5000") .UseStartup<Startup>(); 或在部署是直接指定:dotnet *.dll --urls http://*:5000


版权声明:本文为baidu_38493460原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。