部署Asp.net core & Nginx,通过nginx转发

时间:2023-03-09 09:48:00
部署Asp.net core & Nginx,通过nginx转发

部署Asp.net core & Nginx,通过nginx转发

CentOS 7 x64

1.vs2017 建立Asp.net core项目,并发布到目录

部署Asp.net core & Nginx,通过nginx转发

2.通过FTP工具,将程序copy到CentOS上。

部署Asp.net core & Nginx,通过nginx转发

3.配置nginx源

vi /etc/yum.repos.d/nginx.repo #创建并编辑nginx源的配置文件

部署Asp.net core & Nginx,通过nginx转发

不同的linux系统baseurl配置不同,具体可查看http://nginx.org/en/linux_packages.html

4.yum install nginx 安装nginx,显示版本号,表示安装成功

部署Asp.net core & Nginx,通过nginx转发

5.systemctl restart nginx  #重启nginx

6.如果启动报错,显示以下错误,可以把CentOS重启,就不会报错

部署Asp.net core & Nginx,通过nginx转发

7.systemctl enable nginx #设置开机自动启动

8.firewall-cmd --zone=public --add-port=80/tcp --permanent #防火墙开启80端口

--zone #作用域
--add-port=80/tcp  #添加端口,格式为:端口/通讯协议
--permanent   #永久生效,没有此参数重启后失效
9.systemctl stop firewalld.service  
   systemctl start firewalld.service #重启防火墙

10.vi /etc/nginx/conf.d/default.conf #修改nginx配置文件,添加对http://localhost:5000的转发

proxy_pass http://localhost:5000;

proxy_http_version 1.1;

proxy_set_header Upgrade $http_upgrade;

proxy_set_header Connection keep-alive;

proxy_set_header Host $host;

proxy_cache_bypass $http_upgrade;

部署Asp.net core & Nginx,通过nginx转发

11.到程序目录,输入dotnet xxx.dll

部署Asp.net core & Nginx,通过nginx转发

说明asp.net core项目部署成功。 可以通过nohup将进程设置为后台进程,即便把命令行关闭也能正常运行:nohup dotnet CoreWebDemo.dll &

nohup具体使用方式,可以查看http://blog.****.net/a1017680279/article/details/49015415

12.yum install policycoreutils-python

cat /var/log/audit/audit.log | grep nginx | grep denied | audit2allow -M mynginx

semodule -i mynginx.pp

将nginx添加至SELinux的白名单,否则会报502错误。当然也可以选择关闭SELinux

部署Asp.net core & Nginx,通过nginx转发

12.访问CentOS的ip地址,显示主页,表示nginx转发成功。

部署Asp.net core & Nginx,通过nginx转发