本文意在教大家如何在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项目的更多相关文章

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

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

  2. 如何在Linux上通过grub添加内核参数

    转自Linux中国 我们可以在linux内核启动时为其提供各种各样的参数.这些参数可以自定义内核默认的行为,或者通知内核关于硬件的配置信息.内核参数应在内核启动时通过引导装载程序,如GRUB或LILO ...

  3. 如何在Linux上使用VIM进行.Net Core开发

    对于在Linux上开发.Net Core的程序员来说, 似乎都缺少一个好的IDE. Windows上有Visual Studio, Mac上有Visual Studio for Mac, 难道Linu ...

  4. 如何在 Linux 上复制文件/文件夹到远程系统?

    从一个服务器复制文件到另一个服务器,或者从本地到远程复制是 Linux 管理员的日常任务之一. 我觉得不会有人不同意,因为无论在哪里这都是你的日常操作之一.有很多办法都能处理这个任务,我们试着加以概括 ...

  5. springboot打成的jar包如何在Linux上持久运行

    一.首先说说在没有springboot的时候,项目是如何部署的? 1.动态web项目 动态web项目部署很方便,基本上上传文件到服务器的tomcat里面的webapps文件夹下即可完成部署.当然了,这 ...

  6. 如何在Linux上清理内存缓存、缓冲与交换空间

    如何在Linux上清理内存缓存.缓冲与交换空间 与其他类型的操作系统一样,GNU/Linux已经有效的实现了内存管理,甚至更加优秀.但是如果任何进程正在吃光你的内存,并且你想清理它,Linux提供了一 ...

  7. 如何在 Linux 上设置密码策略

    https://linux.cn/article-2518-1.html 用户帐号管理是系统管理员最重要的工作之一.而密码安全是系统安全中最受关注的一块.在本教程中,我将为大家介绍如何在 Linux ...

  8. 如何在 Linux 上安装应用程序

    如何在 Linux 上安装应用程序 编译自:https://opensource.com/article/18/1/how-install-apps-linux作者: Seth Kenlon原创:LC ...

  9. [转帖]如何在Linux上使用命令行查看硬件信息

    如何在Linux上使用命令行查看硬件信息 时间:2016-01-13   作者:admin 分类:新手入门 阅读:126次 http://embeddedlinux.org.cn/emb-linux/ ...

随机推荐

  1. python文件调用方法

    文件输入输出 open函数可以对文本文件进行读写的操作 基本形式: open(filename,mode) filename是文件名,可以写为绝对路径也可以是相对路径 mode是打开模式. open函 ...

  2. RabbitMQ AMQP 事务机制

    1,在之前的文章中介绍了RabbitMQ的五种队列形式 其中,在工作队列中,为了保证消费者的公平性,采用了channel.basicQos(1),保证了每次只发一条消息给消费者消费,并且使用手动签收的 ...

  3. 2019级第一次月赛暨ACM工作室第一次招新赛、补题赛

    A:最简单签到,没有之一 Description 此题简单如题意,就是求最大值 Input 多组输入 每组输入输入一串字符串(包括字母和数字),长度小于500 Output 每行输出字符ASCII值与 ...

  4. 关于MySQL Notifiter的简单使用

    MySQL Notifiter是MySQL 数据库的辅助工具. 1.打开MySQL Notifiter Command Line Client,输入密码:123456(这是我自己的) 2.创建一个名为 ...

  5. echarts整理

    保存一些常用的echarts图表及制作方法

  6. CentOS 7 Docker安装

    1. uname -a 查询机器信息,确保CPU为64位,且Linux内核在3.10版本以上 2. 更新yum包: yum update 3. 在 /etc/yum.repos.d下创建 docker ...

  7. 原地算法(in-place algorithm)

    原地算法(in-place algorithm) 在计算机科学中,一个原地算法(in-place algorithm)基本上不需要额外辅助的数据结构,然而,允许少量额外的辅助变量来转换数据的算法.当算 ...

  8. 2017蓝桥杯日期问题(C++B组)

    标题:日期问题小明正在整理一批历史文献.这些历史文献中出现了很多日期.小明知道这些日期都在1960年1月1日至2059年12月31日.令小明头疼的是,这些日期采用的格式非常不统一,有采用年/月/日的, ...

  9. git中常用命令的总结

    一.git stash  1.git  stash 保存当前工作进度,会把暂存区和工作区的改动保存起来.执行完这个命令后,在运行git status命令,就会发现当前是一个干净的工作区,没有任何改动. ...

  10. tf.nn.relu6 激活函数

    tf.nn.relu6(features,name=None) 计算校正线性6:min(max(features, 0), 6) 参数: features:一个Tensor,类型为float,doub ...