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

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

 

CentOS 7 x64

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

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

3.配置nginx源  

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

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

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

5.systemctl restart nginx  #重启nginx

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

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;

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

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

nohup具体使用方式,可以查看http://blog.csdn.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

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

 

 

posted @ 2018-01-15 01:02  Twinhead  阅读(2957)  评论(0编辑  收藏  举报