测试机器:阿里云云主机1核2g

安装环境:centos-7

服务器:Nginx 1.17.1 测试默认已启动

已安装配置:.Net Core 3.1 测试默认安装

连接配置:x-ftp,x-shell

在配置好.net Core环境后,将本地的项目以文件形式发布后上传至Linux,然后cd至上传的文件目录

1、检查云服务器.net core的版本情况

  1. dotnet --version

2、确保防火墙关闭和配置端口开放

这样网上的教程很多,在此不过多描述!大家自己去百度即可。

3、检查Nginx的配置文件

  1. nginx -t

为什么需要首先检查nginx的配置文件,因为这样你才能确定你的配置文件是在哪里,而不是你自定义安装的目录,当然默认是/usr/local/nginx

4、启动.Net Core WebApi服务

  1. nohup dotnet SingleBlog.Web.dll > /dev/null >& &

为什么需要这样写!因为这样你关闭连接后就不会关闭正在运行的程序了,否则会关闭。

回车运行后会出现一个端口,不是.net core的调试环境!!记住这个端口!

5、修改Nginx配置文件并配置域名

通过x-ftp进入到/usr/local/nginx目录找到conf然后用记事本编辑nginx.conf

  1. server {
  2. listen 80;
  3. server_name www.zswblog.xyz;#此处填写你自己的域名
  4. rewrite ^(.*) https://$server_name$request_uri permanent; #配置ssl后期再说,可以不填
  5. index index.html; #指定替换的页面
  6. root /root/SingleBlog/wwwroot; #你的配置目录用于修改替换nginx的index页面
  7. location / {
  8. proxy_pass http://localhost:8004;#dotnet运行一般是占用8004端口,所以需要反向代理到域名
  9. proxy_http_version 1.1;
  10. proxy_set_header Upgrade $http_upgrade;
  11. proxy_set_header Connection keep-alive;
  12. proxy_set_header Host $host;
  13. proxy_cache_bypass $http_upgrade;
  14. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  15. proxy_set_header X-Forwarded-Proto $scheme;
  16. }

将此段代码替换成nginx.conf中http配置下的sever!

保存后退出!

6、重启nginx服务

  1. 第一步-检查配置文件是否有错误:nginx -t
  2. 第二部-重启nginx服务:nginx -s reload

7、在外部浏览器打开你的域名,此时应该指向你的dotnet运行的端口的网页了,当然webapi没有任何网页加载,他需要前端来进行请求数据

8、关闭运行

关闭运行的.net Core服务需要通过kill进程来操作

  1. 第一步-查询所有运行的服务:ps -A
  2. 第二步-找到dotnet的运行端口
  3. 比如我的dotnet运行端口是28644
  4. kill 28644
  5. 回车运行后即可关闭服务

这个时候nginx检测不到你的8004端口所以这时候你访问的应该是nginx的错误页面

这就是.net Core在nginx的启动配置和关闭的最简单的方式!

如果有补充的,欢迎在下方评论!

.Net Core WebApi在Linux上启动和关闭的更多相关文章

  1. [Mongo]Linux上启动与关闭MongoDB

    文档地址:https://docs.mongodb.com/v3.0/tutorial/install-mongodb-on-amazon/ 默认配置下,Mongo实例会将其数据文件存放在/var/l ...

  2. ASP.NET Core MVC 在linux上的创建及发布

    前言 ASP.NET core转眼都发布半月多了,社区最近也是非常活跃,虽然最近从事python工作,但也一直对.NET念念不忘,看过了园区大神们搭建的Asp.net core项目之后,自己也是跃跃欲 ...

  3. NET Core MVC 在linux上的创建及发布

    NET Core MVC 在linux上的创建及发布 前言 ASP.NET core转眼都发布半月多了,社区最近也是非常活跃,虽然最近从事python工作,但也一直对.NET念念不忘,看过了园区大神们 ...

  4. springboot学习笔记:12.解决springboot打成可执行jar在linux上启动慢的问题

    有时候,当你把你的springboot项目打成可执行的jar,放在linux上启动时,发现启动超级慢: 这往往是因为springboot内置tomcat启动时实例化SecureRandom对象随机数策 ...

  5. linux svn启动和关闭

    linux svn启动和关闭 博客分类: linux系统 svnlinux  1,启动SVN sudo svnserve -d -r /home/data/svn/ 其中 -d 表示守护进程, -r ...

  6. Linux+.Net Core+Nginx(在Linux上使用Nginx反向代理.Net Core 项目)

    Linux+.Net Core+Nginx 之前的文章中有提到关于使用Nginx在linux来实现反向代理,今天我们继续加点料.在Centos7中部署.NetCore,然后使用Nginx进行反向代理! ...

  7. Linux上启动Cron任务

    cron是一个Linux下的定时执行工具,无需人工干预,与quartz上的cron表达式稍有不同.由于cron是Linux上的内置基础服务,并不是所有服务器都是默认启动该服务的,如果没有启动可以使用下 ...

  8. .net core webapi 在原有基础上修改。

    using System; using System.Collections.Generic; using System.Data; using System.IO; using System.Lin ...

  9. net core WebApi——文件分片上传与跨域请求处理

    目录 前言 开始 测试 跨域 小结 @ 前言 在之前整理完一套简单的后台基础工程后,因为业务需要鼓捣了文件上传跟下载,整理完后就迫不及待的想分享出来,希望有用到文件相关操作的朋友可以得到些帮助. 开始 ...

随机推荐

  1. 02-Java开发环境的配置

    在本章节中我们将为大家介绍如何搭建Java开发环境. Windows 上安装开发环境 window系统安装java 下载JDK 首先我们需要下载java开发工具包JDK,下载地址:http://www ...

  2. easyui 表单提交前的 confirm 处理

    最近学习用 easyui,异步提交表单是遇到一个小问题 $('#fModiDetail').form('submit',{ url:'...', onSubmit:function(){ if($(t ...

  3. android选择器汇总、仿最美应用、通用课程表、卡片动画、智能厨房、阅读客户端等源码

    Android精选源码 android各种 选择器 汇总源码 高仿最美应用项目源码 android通用型课程表效果源码 android实现关键字变色 Android ViewPager卡片视差.拖拽及 ...

  4. jtemplates使用+同内容列合并

    function ImportStatistics(val, pros) { top.$.jBox.tip("导入已完成,正在统计整理导入的数据...", 'loading'); ...

  5. ServletContextListener 监听器

    Servlet中的过滤器Filter是实现了javax.servlet.Filter接口的服务器端程序,主要的用途是过滤字符编码.做一些业务逻辑判断等.其工作原理是,只要你在web.xml文件配置好要 ...

  6. the Uneducated are|anymore|that| so as to |die from|die of|

    定冠词加上某些形容词可以泛指一类人,谓语动词一般用复数形式,the uneducated泛指未受过教育的人, the Uneducated are more to be pitied than bla ...

  7. python实现经典冒泡算法

    利用for循环,完成a=[1,7,4,89,34,2]的冒泡排序 冒泡排序:小的排在前,大的排在后面

  8. spring security之Remember Me

    spring-security.xml配置 环境: spring版本:5.0.7.RELEASE spring-security.xml引入: http://www.springframework.o ...

  9. mysql获取按日期排序获取最新的记录

    今天让一个数据查询难了.主要是对group by 理解的不够深入.才出现这样的情况 这种需求,我想很多人都遇到过.下面是我模拟我的内容表 我现在需要取出每个分类中最新的内容 select * from ...

  10. js 中 == 和 === 的区别

    js中的 ==和===的区别 简单理解 js 是弱类型的语言,其中 == 可以理解为 是值是否相等,而===不仅比较值是否相等,还比较类型是否相等. 简单案例: var str = "1&q ...