关于如何在Linux上使用Nugix反向代理部署net core3.1项目
本文意在教大家如何在Linux上部署net core web项目,本人通过实践已经成功可以通过外网访问我部署在阿里云服务器上的站点。
一:需要用到的东西如下:
1:一个基于net core框架下的web项目,可以是MVC也可以是webapi可以自己选择,目前为了简单部署我用的是一个MVC项目,同时为了方便演示我们这里添加一句代码指定默认端口为5000,当然这个也可以自己定,和其它端口不起冲突就行。

2:一台Linux服务器,可以是阿里云或者腾讯云或者虚拟机下都可以实现,大家可根据自己的情况选择适合自己的服务器,我选择的是一台阿里云服务器。

3:打包发布我们的web项目操作如下图,发布的操作和fw下是一样的发布到文件系统,需要注意的是目标运行时需要选择Linux版本就可以了。


4:接下来需要把我们项目文件拷贝到服务器上运行,我们用的是Winscp工具。
(1):在root目录下新建一个文件夹dotnet把发布的项目文件通过Winscp拷贝到该目录下。

(2):接下来我们需要通过命令启动项目那我们需要使用后,那么我们可以使用Xshell工具远程连接到我们的服务器上通过控制台启动,连接成功如下。

(3)通过命令cd 到publish目录输入命令:dotnet +项目.dll 即可,如出现下图则说明项目部署成功。

5:此时项目已运行成功,但是外网不能访问,所以我们得安装配置Nugix替代之前的IIS进行方向代理
(1): 安装Nugix命令,
1:wget http://nginx.org/download/nginx-1.0.14.tar.gz
2:tar zxvf nginx-1.0.14.tar.gz
3:./configure --with-http_stub_status_module --prefix=/opt/nginx
4:cd nginx-1.0.14
5:make
6:make install
(2)最重要的是安装成功之后需要更改配置文件命令入下:
1:cd /usr/local/nginx/conf
2:vim nginx.conf
3:按 i 即可进入编辑状态,更改listen端口和server_name服务器地址即可,其它不用改。
4:更改好了之后输入 :wq 即可保存并退出编辑。
5:vim nginx.conf输入命令查看配置是否修改成功
6: /usr/local/nginx/sbin/nginx -s reload 输入命令重新加载配置文件
6:cd到项目跟目录重新启动项目:

7:在浏览器输入你外网地址+端口即可访问你的项目。

7:需要注意的是 如果你外网访问不了的话,需要检查你的端口是否开放,防火墙是都打开。
以上为个人实线中遇到的问题和一些实现步骤,有啥问题欢迎各位大佬指正。
关于如何在Linux上使用Nugix反向代理部署net core3.1项目的更多相关文章
- Linux+.Net Core+Nginx(在Linux上使用Nginx反向代理.Net Core 项目)
Linux+.Net Core+Nginx 之前的文章中有提到关于使用Nginx在linux来实现反向代理,今天我们继续加点料.在Centos7中部署.NetCore,然后使用Nginx进行反向代理! ...
- 如何在Linux上通过grub添加内核参数
转自Linux中国 我们可以在linux内核启动时为其提供各种各样的参数.这些参数可以自定义内核默认的行为,或者通知内核关于硬件的配置信息.内核参数应在内核启动时通过引导装载程序,如GRUB或LILO ...
- 如何在Linux上使用VIM进行.Net Core开发
对于在Linux上开发.Net Core的程序员来说, 似乎都缺少一个好的IDE. Windows上有Visual Studio, Mac上有Visual Studio for Mac, 难道Linu ...
- 如何在 Linux 上复制文件/文件夹到远程系统?
从一个服务器复制文件到另一个服务器,或者从本地到远程复制是 Linux 管理员的日常任务之一. 我觉得不会有人不同意,因为无论在哪里这都是你的日常操作之一.有很多办法都能处理这个任务,我们试着加以概括 ...
- springboot打成的jar包如何在Linux上持久运行
一.首先说说在没有springboot的时候,项目是如何部署的? 1.动态web项目 动态web项目部署很方便,基本上上传文件到服务器的tomcat里面的webapps文件夹下即可完成部署.当然了,这 ...
- 如何在Linux上清理内存缓存、缓冲与交换空间
如何在Linux上清理内存缓存.缓冲与交换空间 与其他类型的操作系统一样,GNU/Linux已经有效的实现了内存管理,甚至更加优秀.但是如果任何进程正在吃光你的内存,并且你想清理它,Linux提供了一 ...
- 如何在 Linux 上设置密码策略
https://linux.cn/article-2518-1.html 用户帐号管理是系统管理员最重要的工作之一.而密码安全是系统安全中最受关注的一块.在本教程中,我将为大家介绍如何在 Linux ...
- 如何在 Linux 上安装应用程序
如何在 Linux 上安装应用程序 编译自:https://opensource.com/article/18/1/how-install-apps-linux作者: Seth Kenlon原创:LC ...
- [转帖]如何在Linux上使用命令行查看硬件信息
如何在Linux上使用命令行查看硬件信息 时间:2016-01-13 作者:admin 分类:新手入门 阅读:126次 http://embeddedlinux.org.cn/emb-linux/ ...
随机推荐
- 初识js(第一篇)
初识javascript js是前端中作交互控制的语言,有了它,我们的前端页面才能"活"起来.学好这么语言显得非常重要,但是存在一定难度,所以一定要认真学习,充满耐心. js书写规 ...
- 面试官:ThreadLocal的应用场景和注意事项有哪些?
前言 ThreadLocal主要有如下2个作用 保证线程安全 在线程级别传递变量 保证线程安全 最近一个小伙伴把项目中封装的日期工具类用在多线程环境下居然出了问题,来看看怎么回事吧 日期转换的一个工具 ...
- D. Fight with Monsters
D. Fight with Monsters time limit per test 1 second memory limit per test 256 megabytes input standa ...
- 1008 Elevator (20 分)
The highest building in our city has only one elevator. A request list is made up with N positive nu ...
- 为应用程序池“XXX”提供服务的进程在与 Windows Process Activation Service 通信时出现严重错误。该进程 ID 为“XXXX”。数据字段包含错误号。 改进查找流程
原文链接:https://www.cnblogs.com/qidian10/p/6028784.html 为防止原作者删除,留作解决方法备份 ---------------------------- ...
- cephfs分布式系统
cephfs分布式系统 CephFS:分布式文件系统 l 什么是CephFS: 分 ...
- 使用Homebrew在Mountain Lion上安装MySQL
一.安装mysql brew install mysql 二.开机启动mysql brew info mysql 根据提示,设置开机启动 三.设置mysql开启和停止命令 alias mysql-st ...
- django、celery异步发邮件
django.celery异步发邮件 django自带的send_mail发邮件功能执行发邮件功能会因为网络的原因造成花费的时间过长,为了解决这个问题,可以用celery + redis代替 安装包: ...
- Javascript cookie和session
一.cookie: 在网站中,http请求是无状态的.也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户.cookie的出现就是为了解决这个问题,第一次登录 ...
- PAT 链表倒序的算法优化
之前的答案错误问题已经解决了,现在还有运行超时的问题,先贴上之前的代码 1 #include <iostream> 2 #include <string.h> 3 using ...