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默认页面(注:我的是阿里云服务器,可能与你的默认页面内容不一样)

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)浏览器访问验证

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

(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)配置反向代理

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

(3)问题

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

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值