专栏首页.Net、.Net Core 、DockerLinux+.Net Core+Nginx(在Linux上使用Nginx反向代理.Net Core 项目)

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

Linux+.Net Core+Nginx

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

我们先准备好一个.Net Core 的 Web 项目,然后发布成linux版本,然后在根目录下面去寻找到刚发布的项目文件,为后续做好准备。

然后我们需要在Linux上安装.Net Core的环境以便于我们的项目能正常的运行在上面。

1、安装.Net Core

sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm

2、安装.net core sdk 并更新

sudo yum update

sudo yum install dotnet-sdk-2.2(当前项目或者使用版本)

3、查看下.net core 版本是否安装成功

dotnet –version

到这里.Net Core的环境在Linux上算是装好了,接下来就进入正题开始部署项目。

4、创建Test文件夹并且上传刚刚发布好的项目文件至其下面

mkdir Test

5、当把发布的文件上传至Tset目录下之后我们就可以创建服务了

sudo nano /etc/systemd/system/Test.service

6、配置好服务文件

[Unit]

Description= Test

[Service]

WorkingDirectory=/root/ Test

ExecStart=/usr/bin/dotnet /root/Test/Test.dll

Restart=always

RestartSec=10

SyslogIdentifier= Test

User=root

Environment=ASPNETCORE_ENVIRONMENT=Production

Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false

 

[Install]

WantedBy=multi-user.target

其中文件详解

Description    一个简单的描述

WorkingDirectory   服务工作的目录

ExecStart          启动时执行的命令

Restart              出错了是否重启  建议   always

RestartSec           重启的时间

User                用户

WantedBy           该服务所在的连接地址
7、重启服务,开启服务并且查看状态
systemctl  enable Test.service

systemctl  start Test.service

systemctl  status Test.service
看到上面这个图片的样子说明启动运行成功了。然后我们可以输入ip+5555去看看效果如何
但是请求了半天发现好像没有反应,我们回过头来检查下,好像遗漏掉了一个东西。5555端口是否开了,当然我们也可以直接关闭防火墙,简单粗暴
8、关闭防火墙或者打开5000端口
关闭防火墙:

systemctl status firewalld      查看运行情况

 

firewall-cmd –state     查看状态

 

service firewalld stop  关闭防火墙

 

firewall-cmd –state   查看状态

开启5000端口:

firewall-cmd --zone=public --permanent --add-port=5555/tcp; firewall-cmd --reload
出现这个页面证明部署.NetCore 应用一切顺利,接下来我们开始安装nginx并且实现反向代理、至于如何在Linux上安装Nginx并运行我在前面文章已经详细介绍了,又忘记了得可以再看看
https://www.cnblogs.com/hulizhong/p/10672918.html
卸载nginx命令

yum remove nginx
我们安装好Nginx之后需要在nginx.conf中进行一定的修改
server {
    listen 8888;
    location / {

  proxy_pass http://localhost:5555;

  proxy_http_version 1.1;

  proxy_set_header Upgrade $http_upgrade;

  proxy_set_header Connection keep-alive;

  proxy_set_header Host $http_host;
 
  proxy_cache_bypass $http_upgrade;

  }
}

修改监听端口为8888,然后转发地址为刚在项目运行的地址ip+5555,一切顺利完成之后

重启nginx

sudo nginx -t

 

sudo nginx -s reload

然后我们在去浏览器中输入ip+8888,惊奇的发现我们访问的内容居然和ip+5555的是一样的

然后到这里Linux+.NetCore+Nginx就正式完成了,这仅是一个小的例子以便于了解,具体在项目当中如何使用还需要更多的了解。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Nginx安装与代理

    将80转发至8082端口:例如:发布访问地址192.168.00.000:8082,转发之后可直接访问192.168.00.000

    小世界的野孩子
  • .NET----错误和异常处理机制

      错误的出现并不总是编写程序的人的原因,有时应用程序会因为应用程序的最终用户引发的动作或运行代码的环境发生错误。无论如何,我们都应预测应用程序中出现的错误,并...

    小世界的野孩子
  • C#解析深浅拷贝

      前面我们学习完了设计模式,在其中我们有了解到原型模式。这里涉及到了克隆自身对象。那么也就是对对象进行拷贝。这里就涉及到了这么一个概念。深浅拷贝、何为深拷贝何...

    小世界的野孩子
  • centos 安装php73 fast cgi+ nginx

    xiny120
  • C++核心准则ES.100:不要混用有符号数和无符号数

    ES.100: Don't mix signed and unsigned arithmetic

    面向对象思考
  • AXI DMA详解与应用篇 | 第二讲、AXI DMA工程搭建及SDK代码分析

    在工程设计中,DMA一般与产生数据或需求数据的IP相连,该IP core可以是带有AXI_Stream接口的高速AD或DA IP核,实验中使用AXI-Strea...

    根究FPGA
  • 012.Nginx负载均衡

    负载均衡是将负载分摊到多个操作单元上执行,从而提高服务的可用性和响应速度,带给用户更好的体验。对于Web应用,通过负载均衡,可以将一台服务器的工作扩展到多台服务...

    木二
  • Posgresql高可用集群实践

    工作中一个第三方软件使用了Posgresql数据库,而在我们的场景里,我们需要保证Posgresql数据库的高可用,网上查找了一下,发现stolon这个高可用,...

    jeremyxu
  • 基于xgboost+GridSearchCV的波士顿房价预测

    2018年8月23日笔记 sklearn官方英文用户使用指南:https://sklearn.org/user_guide.html sklearn翻译中文...

    潇洒坤
  • 再见2015 再见cmd

    本文作者:IMWeb yisbug 原文出处:IMWeb社区 未经同意,禁止转载 2015年已经快要过去了,你是否还在使用有着十几年历史的cmd命令行...

    IMWeb前端团队

扫码关注云+社区

领取腾讯云代金券