CentOS7 安装 Nginx 部署简单项目及使用宝塔面板设置

1、安装EPEL

Nginx 服务器软件安装包在 EPEL 仓库里,但不在CentOS 的 yum 包安装源仓库中,所以需要先添加 CentOS 7 EPEL 仓库:

[root@Tracy src]# yum install -y epel-release 

2、安装Nginx

[root@Tracy src]# yum install -y nginx

3、验证是否安装成功

[root@Tracy src]# nginx -v nginx version: nginx/1.20.1

出现版本号即安装成功!

4、设置Nginx为系统服务

[root@Tracy src]# systemctl enable nginx Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.

5、启动服务

[root@Tracy src]# service nginx start Redirecting to /bin/systemctl start nginx.service

6、浏览器验证

注:确认80端囗对外可访问,设置可参考:CentOS7 开放端囗(使用iptables)_ling1998的博客-CSDN博客

在浏览器中输入访问地址,出现Ngnix默认页面(注:我的是阿里云服务器,可能与你的默认页面内容不一样)

CentOS7 安装 Nginx 部署简单项目及使用宝塔面板设置插图

7、常用命令

nginx //打开nginx

nginx -h //显示帮助

nginx -v //显示版本号

nginx -t //检测配置文件(nginx.conf)是否有语法错误

nginx -T //检测配置文件(nginx.conf)并显示出来

nginx -s start //启动服务

nginx -s reopen //打开错误日志

nginx -s reload //程序加载配置文件(nginx.conf),然后以优雅的方式重启服务

nginx -s stop //强制停止服务

nginx -s quit //优雅的停止服务

设置Nginx为系统服务后,可以通过以下命令操作服务

service nginx start //启动服务

service nginx stop //停止服务

service nginx restart //重启服务

service nginx status //查看服务状态

8、部署项目

(1)项目放在相应目录中,记录项目根目录路径

(2)编辑nginx配置文件

[root@Tracy src]# vi /etc/nginx/nginx.conf 

修改服务配置中的root路径为自己的项目根路径

 server { listen 80; #修改web服务监听端囗,默认为80 listen [::]:80; server_name _; #服务名称 root /home/project; #修改成自己的项目目录 # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; error_page 404 /404.html; location = /404.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }

按Esc退出编辑,输入:wq保存退出

(3)浏览器访问验证

在浏览器中输入访问地址,发现已经改变

CentOS7 安装 Nginx 部署简单项目及使用宝塔面板设置插图1

(4)反向代理及证书配置

配置证书,可以通过https访问,需要开启443端囗,前提条件是需要先有域名,然后做域名解析,然后进行配置nginx.conf

 server { listen 80; listen [::]:80; listen 443 ssl; server_name xxx.xxx.xx; root /home/client-front/out; # 配置证书 ssl_certificate /etc/nginx/cert/8538290.pem; ssl_certificate_key /etc/nginx/cert/8538290.key; ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location ^~ /api/v1 { proxy_pass http://127.0.0.1:8090; } location ^~ /swagger { proxy_pass http://127.0.0.1:8090; } error_page 404 /404.html; location = /404.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }

(5)如何配置http 跳转 https

 server { listen 80; listen [::]:80; return 301 https://$server_name$request_uri; } server { listen 443 ssl; server_name xxx.xxx.xx; root /home/client-front/out; # 配置证书 ssl_certificate /etc/nginx/cert/8538290.pem; ssl_certificate_key /etc/nginx/cert/8538290.key; ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location ^~ /api/v1 { proxy_pass http://127.0.0.1:8090; } location ^~ /swagger { proxy_pass http://127.0.0.1:8090; } error_page 404 /404.html; location = /404.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }

9、宝塔面板

(1)安装

详见官网:宝塔linux面板,一键安装LAMP/LNMP/SSL/Tomcat

(2)配置反向代理

场景:前端访问后端,如下图所示:

CentOS7 安装 Nginx 部署简单项目及使用宝塔面板设置插图2

(3)问题

如果配置完,在浏览器访问时发现并没有生效,查看下配置文件,有的时候通过上面设置的在配置文件中有可能不太一样,我遇到的问题就是配置文件中proxy_pass后面多了一个/,但是上面设置时是没有的

CentOS7 安装 Nginx 部署简单项目及使用宝塔面板设置插图3

原文链接:https://blog.csdn.net/ling1998/article/details/124285954

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享