本文意在教大家如何在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. link与@import区别整理,一个表格带你了解

    网上有许多link和@import的文章,不过大多比较零散,个人觉得一个表格的话看起来能够直观的表达. 于是制作了如下表格: 关于权重这个存在着一些争议,这次碰巧看到了一篇的博客很好的解释了这个问题, ...

  2. 模块 heapq_堆排序

    _heapq_堆排序 该模块提供了堆排序算法的实现.堆是二叉树,最大堆中父节点大于或等于两个子节点,最小堆父节点小于或等于两个子节点. 创建堆 heapq有两种方式创建堆, 一种是使用一个空列表,然后 ...

  3. Python turtle库的应用——蛇

    turtle库介绍 1.Turtle中的turtle.setup()函数用于启动一个图形窗口,它有四个参数 turtle.setup(width, height, startx, starty) 分别 ...

  4. 原生的js操作实现通过对URL的监控获取参数

    原生的js操作实现通过对URL的监控获取用户的操作信息 优化网站的时候,因为列表是用vue组件进行循环渲染,就出现了一个问题,单击跳转的问题,想了很多方案,使用js函数的方式面对这种情况并不乐观,想到 ...

  5. 为什么MySQL要用B+树?聊聊B+树与硬盘的前世今生【宇哥带你玩转MySQL 索引篇(二)】

    为什么MySQL要用B+树?聊聊B+树与硬盘的前世今生 在上一节,我们聊到数据库为了让我们的查询加速,通过索引方式对数据进行冗余并排序,这样我们在使用时就可以在排好序的数据里进行快速的二分查找,使得查 ...

  6. 部署mysql主从同步

                                                 mysql-day06        部署mysql主从同步 案例拓扑 • 一主.一从 – 单向复制时,建议将 ...

  7. 【数据库】MySQL数据库(二)

    一.数据库文件的导出 1.在DOS命令行下导出数据库(带数据) mysqldump -u root -p 数据库名 > E:\wamp\www\lamp175\lamp175.sql 2.在DO ...

  8. 原来rollup这么简单之插件篇

    大家好,我是小雨小雨,致力于分享有趣的.实用的技术文章. 内容分为翻译和原创,如果有问题,欢迎随时评论或私信,希望和大家一起进步. 大家的支持是我创作的动力. 计划 rollup系列打算一章一章的放出 ...

  9. es elasticsearch 6/7 设置内存方法

    es节点的默认的heap内存大小是 1G 大小,在实际生产中,很容易导致内存溢出而导致进程被kill掉.所以我们一般会自己配置自己的,2.x的版本可以通过export ES_HEAP_SIZE=10g ...

  10. ADB教程

    ADB教程 查看当前pc端连接多少设备 adb devices  adb连接android设备  adb connect  [192.168.3.113]  断开连接  adb disconnect  ...