pm2管理多个nodejs项目nginx反向代理多域名https协议ssl证书

简介: pm2管理多个nodejs项目nginx反向代理多域名https协议ssl证书

1565591661627
1565591760930
首先下载免费证书,上传至服务器,证书有很多种,以上阿里云免费版
证书分为DV、OV、EV三种:
DV SSL证书:亦是域名验证型证书,申请该证书时,CA(证书颁发机构)只需审核域名的所有权即可,整个流程非常简单,无需人工,由系统自动完成。所以时间上是比较快的,一般10分钟左右就能签发,而且价格比较便宜,相对来说等级也是比较低的,适合个人网站及小型组织或企业网站。
OV SSL证书:这个是企业验证型,比DV证书的验证要求要高一些。它不仅需要验证域名的所有权,还需要验证企业身份,验证是需提供企业信息和公司营业执照扫描件等资料,都是通过人工审核的,一般需要3-5个工作日才能颁发,价格也相对较高一些,但是安全等级大大的提高了,适合一般组织或中小型企业网站。
EV SSL证书:这是目前业界最高安全级别的证书,功能比前两位都强大。如果用户安装了此证书,浏览器不仅会显示绿色的地址栏及https前缀和安全锁的标志,而且还会显示企业名,这个不仅看上去就很高大上,而且真的更安全。当然了,EV SSL证书审核也是最严格的,需要提供企业信息和公司营业执照扫描件等资料以及邓白氏或者律师意见信,CA机构会人工验证组织和电话信息,一般3-7个工作日才能颁发,价格也是相对比较高的,适用于在线交易网站、大型企业或金融、银行等组织。

以上三种证书都可选单域名,多域名,通用域名3个种类,价格也不同。
单域名:仅保护一个域名的普通SSL证书。

www.centby.com

多域名:可以同时保护多个域名数量可选择,不管是主域名还是子域名都行。

www.centby.com,m.centby.com,porcelain.bbs.centby.com

通用域名:能够保护一个域名以及该域名的所有下一级域名,有范围的限制,但是没有数量的限制。

*.centby.com 或 *.info.centby.com 不可以越级

配置Nginx

vi /usr/local/nginx/conf/nginx.conf
#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

#start

    upstream demoa {
       #ip_hash;
       server 127.0.0.1:8000;
    }
    upstream demob {
       #ip_hash;
       server 127.0.0.1:8001;
    }

#end

#start ssl

    server {
        listen       443;
        server_name  www.centby.com;
        ssl on;
        root         /usr/share/nginx/html;

        ssl_certificate "cert/cert-15_xy.centby.com.crt";##示例
        ssl_certificate_key "cert/cert-15_xy.centby.com.key";##示例
        ssl_session_cache shared:SSL:1m;
        ssl_session_timeout  5m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_prefer_server_ciphers on;

        location / {
            proxy_pass http://demoa;
        }

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }

    server {
        listen       443;
        server_name  m.centby.com;
        ssl on;
        root         /usr/share/nginx/html;

        ssl_certificate "cert/cert-8_aapi.crt";##示例
        ssl_certificate_key "cert/cert-8_bapi.key";##示例
        ssl_session_cache shared:SSL:1m;
        ssl_session_timeout  5m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_prefer_server_ciphers on;

        location / {
            proxy_pass http://demob;
        }

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }

#end ssl

    server {
        listen       80;
        server_name  www.centby.com;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        #location / {
        #    root   html;
        #     index  index.html index.htm;
        # }

        location / {
             proxy_set_header Host $host;
             proxy_set_header X-Real-IP $remote_addr;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
             proxy_buffering off;
             proxy_pass http://demoa;
        }
        #error_page  404              /404.html;
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

   server {
        listen       80;
        server_name  m.centby.com;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        #location / {
        #    root   html;
        #     index  index.html index.htm;
        # }

        location / {
             proxy_set_header Host $host;
             proxy_set_header X-Real-IP $remote_addr;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
             proxy_buffering off;
             proxy_pass http://demob;
        }
        #error_page  404              /404.html;
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

    #include vhost/*.conf;

}

重启Nginx服务

//进入目录
cd /usr/local/nginx/sbin
//测试
./nginx -t
//重启服务
./nginx -s reload
相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
目录
相关文章
|
1月前
|
前端开发 应用服务中间件 nginx
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
113 0
|
23天前
|
应用服务中间件 nginx
【Nginx】 nginx 项目上线后刷新页面丢失 404
【Nginx】 nginx 项目上线后刷新页面丢失 404
23 2
|
6天前
|
缓存 负载均衡 应用服务中间件
Nginx缓存及HTTPS配置小记(上)
Nginx缓存及HTTPS配置小记
19 0
|
15天前
|
前端开发 应用服务中间件 网络安全
nginx配置SSL证书配置https访问网站 超详细(附加配置源码+图文配置教程)
nginx配置SSL证书配置https访问网站 超详细(附加配置源码+图文配置教程)
44 0
|
16天前
|
Ubuntu 应用服务中间件 Linux
nginx 配置代理ip访问https的域名配置
nginx 配置代理ip访问https的域名配置
|
27天前
|
应用服务中间件 网络安全 nginx
nginx配置https访问
nginx配置https访问
45 0
|
2月前
|
应用服务中间件 nginx
nginx配置https和直接访问静态文件的方式
nginx配置https和直接访问静态文件的方式
31 3
|
2月前
|
前端开发 应用服务中间件 网络安全
http转为https,ssl证书安装及nginx配置
http转为https,ssl证书安装及nginx配置
51 1
|
5天前
|
域名解析 弹性计算 Linux
阿里云购买云服务器、注册域名、备案及绑定图文教程参考
本文为大家介绍了2024年购买阿里云服务器和注册域名,绑定以及备案的教程,适合需要在阿里云购买云服务器、注册域名并备案的用户参考,新手用户可通过此文您了解在从购买云服务器到完成备案的流程。
阿里云购买云服务器、注册域名、备案及绑定图文教程参考
阿里云域名购买注册流程_创建信息模板_域名实名认证全流程
阿里云域名注册指南:访问[阿里云域名注册入口,查询并注册心仪域名,选择后缀,加入清单后结算。价格因后缀而异,如.com首年78元。创建域名信息模板完成实名认证,首次需上传资料。获取优惠口令并使用可享折扣