.Net Core WebApi在Linux上启动和关闭
测试机器:阿里云云主机1核2g
安装环境:centos-7
服务器:Nginx 1.17.1 测试默认已启动
已安装配置:.Net Core 3.1 测试默认安装
连接配置:x-ftp,x-shell
在配置好.net Core环境后,将本地的项目以文件形式发布后上传至Linux,然后cd至上传的文件目录
1、检查云服务器.net core的版本情况
- dotnet --version
2、确保防火墙关闭和配置端口开放
这样网上的教程很多,在此不过多描述!大家自己去百度即可。
3、检查Nginx的配置文件
- nginx -t
为什么需要首先检查nginx的配置文件,因为这样你才能确定你的配置文件是在哪里,而不是你自定义安装的目录,当然默认是/usr/local/nginx
4、启动.Net Core WebApi服务
- nohup dotnet SingleBlog.Web.dll > /dev/null >& &
为什么需要这样写!因为这样你关闭连接后就不会关闭正在运行的程序了,否则会关闭。
回车运行后会出现一个端口,不是.net core的调试环境!!记住这个端口!
5、修改Nginx配置文件并配置域名
通过x-ftp进入到/usr/local/nginx目录找到conf然后用记事本编辑nginx.conf
- server {
- listen 80;
- server_name www.zswblog.xyz;#此处填写你自己的域名
- rewrite ^(.*) https://$server_name$request_uri permanent; #配置ssl后期再说,可以不填
- index index.html; #指定替换的页面
- root /root/SingleBlog/wwwroot; #你的配置目录用于修改替换nginx的index页面
- location / {
- proxy_pass http://localhost:8004;#dotnet运行一般是占用8004端口,所以需要反向代理到域名
- proxy_http_version 1.1;
- proxy_set_header Upgrade $http_upgrade;
- proxy_set_header Connection keep-alive;
- proxy_set_header Host $host;
- proxy_cache_bypass $http_upgrade;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- proxy_set_header X-Forwarded-Proto $scheme;
- }
将此段代码替换成nginx.conf中http配置下的sever!
保存后退出!
6、重启nginx服务
- 第一步-检查配置文件是否有错误:nginx -t
- 第二部-重启nginx服务:nginx -s reload
7、在外部浏览器打开你的域名,此时应该指向你的dotnet运行的端口的网页了,当然webapi没有任何网页加载,他需要前端来进行请求数据
8、关闭运行
关闭运行的.net Core服务需要通过kill进程来操作
- 第一步-查询所有运行的服务:ps -A
- 第二步-找到dotnet的运行端口
- 比如我的dotnet运行端口是28644
- kill 28644
- 回车运行后即可关闭服务
这个时候nginx检测不到你的8004端口所以这时候你访问的应该是nginx的错误页面
这就是.net Core在nginx的启动配置和关闭的最简单的方式!
如果有补充的,欢迎在下方评论!
.Net Core WebApi在Linux上启动和关闭的更多相关文章
- [Mongo]Linux上启动与关闭MongoDB
文档地址:https://docs.mongodb.com/v3.0/tutorial/install-mongodb-on-amazon/ 默认配置下,Mongo实例会将其数据文件存放在/var/l ...
- ASP.NET Core MVC 在linux上的创建及发布
前言 ASP.NET core转眼都发布半月多了,社区最近也是非常活跃,虽然最近从事python工作,但也一直对.NET念念不忘,看过了园区大神们搭建的Asp.net core项目之后,自己也是跃跃欲 ...
- NET Core MVC 在linux上的创建及发布
NET Core MVC 在linux上的创建及发布 前言 ASP.NET core转眼都发布半月多了,社区最近也是非常活跃,虽然最近从事python工作,但也一直对.NET念念不忘,看过了园区大神们 ...
- springboot学习笔记:12.解决springboot打成可执行jar在linux上启动慢的问题
有时候,当你把你的springboot项目打成可执行的jar,放在linux上启动时,发现启动超级慢: 这往往是因为springboot内置tomcat启动时实例化SecureRandom对象随机数策 ...
- linux svn启动和关闭
linux svn启动和关闭 博客分类: linux系统 svnlinux 1,启动SVN sudo svnserve -d -r /home/data/svn/ 其中 -d 表示守护进程, -r ...
- Linux+.Net Core+Nginx(在Linux上使用Nginx反向代理.Net Core 项目)
Linux+.Net Core+Nginx 之前的文章中有提到关于使用Nginx在linux来实现反向代理,今天我们继续加点料.在Centos7中部署.NetCore,然后使用Nginx进行反向代理! ...
- Linux上启动Cron任务
cron是一个Linux下的定时执行工具,无需人工干预,与quartz上的cron表达式稍有不同.由于cron是Linux上的内置基础服务,并不是所有服务器都是默认启动该服务的,如果没有启动可以使用下 ...
- .net core webapi 在原有基础上修改。
using System; using System.Collections.Generic; using System.Data; using System.IO; using System.Lin ...
- net core WebApi——文件分片上传与跨域请求处理
目录 前言 开始 测试 跨域 小结 @ 前言 在之前整理完一套简单的后台基础工程后,因为业务需要鼓捣了文件上传跟下载,整理完后就迫不及待的想分享出来,希望有用到文件相关操作的朋友可以得到些帮助. 开始 ...
随机推荐
- 02-Java开发环境的配置
在本章节中我们将为大家介绍如何搭建Java开发环境. Windows 上安装开发环境 window系统安装java 下载JDK 首先我们需要下载java开发工具包JDK,下载地址:http://www ...
- easyui 表单提交前的 confirm 处理
最近学习用 easyui,异步提交表单是遇到一个小问题 $('#fModiDetail').form('submit',{ url:'...', onSubmit:function(){ if($(t ...
- android选择器汇总、仿最美应用、通用课程表、卡片动画、智能厨房、阅读客户端等源码
Android精选源码 android各种 选择器 汇总源码 高仿最美应用项目源码 android通用型课程表效果源码 android实现关键字变色 Android ViewPager卡片视差.拖拽及 ...
- jtemplates使用+同内容列合并
function ImportStatistics(val, pros) { top.$.jBox.tip("导入已完成,正在统计整理导入的数据...", 'loading'); ...
- ServletContextListener 监听器
Servlet中的过滤器Filter是实现了javax.servlet.Filter接口的服务器端程序,主要的用途是过滤字符编码.做一些业务逻辑判断等.其工作原理是,只要你在web.xml文件配置好要 ...
- the Uneducated are|anymore|that| so as to |die from|die of|
定冠词加上某些形容词可以泛指一类人,谓语动词一般用复数形式,the uneducated泛指未受过教育的人, the Uneducated are more to be pitied than bla ...
- python实现经典冒泡算法
利用for循环,完成a=[1,7,4,89,34,2]的冒泡排序 冒泡排序:小的排在前,大的排在后面
- spring security之Remember Me
spring-security.xml配置 环境: spring版本:5.0.7.RELEASE spring-security.xml引入: http://www.springframework.o ...
- mysql获取按日期排序获取最新的记录
今天让一个数据查询难了.主要是对group by 理解的不够深入.才出现这样的情况 这种需求,我想很多人都遇到过.下面是我模拟我的内容表 我现在需要取出每个分类中最新的内容 select * from ...
- js 中 == 和 === 的区别
js中的 ==和===的区别 简单理解 js 是弱类型的语言,其中 == 可以理解为 是值是否相等,而===不仅比较值是否相等,还比较类型是否相等. 简单案例: var str = "1&q ...