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

Linux .NetCore Nginx之前的文章中有提到关于使用Nginx在linux来实现反向代理,今天我们继续加点料。在Centos7中部署.NetCore,然后使用Nginx进行反向代理!我们先准备好一个.NetCore的Web项目,然后发布成linux版本,然后在根目录下面去寻找到刚发布的项目文件,为后续做好准备。然后我们需要在Linux上安装.NetCore的环境以便于我们的项目能正常...

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 updatesudo 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/ TestExecStart=/usr/bin/dotnet /root/Test/Test.dllRestart=alwaysRestartSec=10SyslogIdentifier= TestUser=rootEnvironment=ASPNETCORE_ENVIRONMENT=ProductionEnvironment=DOTNET_PRINT_TELEMETRY_MESSAGE=false [Install]WantedBy=multi-user.target

其中文件详解

Description 一个简单的描述WorkingDirectory服务工作的目录ExecStart 启动时执行的命令Restart  出错了是否重启  建议alwaysRestartSec  重启的时间User 用户WantedBy  该服务所在的连接地址

7、重启服务,开启服务并且查看状态
systemctl  enable Test.servicesystemctl  start Test.servicesystemctl  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,一切顺利完成之后

重启nginxsudo nginx -t sudo nginx -s reload

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

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

源文地址:https://www.guoxiongfei.cn/cntech/14880.html