Nginx 配置 HTTPS(多域名)

  • 首页
  • SSL证书安装教程

Nginx 配置 HTTPS(多域名)

开发测试过程中,因为某些原因,想要让手头的 A、B 域名同时指向云服务器的 443 端口,支持 HTTPS。

虽然域名不同, 但都监听 443 端口, 但有着不同的 server_name, 这样当收到请求时就可以根据请求的 server_name 不同来转发到不同的服务.

而服务自身像往常一样只要继续监听 8090、8091 即可.

server {
                listen 443 ssl;
                server_name AAA.example.cn www.AAA.example.cn;    
                ssl_certificate "/home/demontf/2076603_AAA.example.cn.pem";   
                ssl_certificate_key "/home/yushan/demontf/2076603_AAA.example.cn.key";    
            
                location / {
                            proxy_pass http://127.0.0.1:8090;
                            proxy_set_header X-Real-IP $remote_addr;
                            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                            proxy_set_header Host $http_host;
                            proxy_set_header X-NginX-Proxy true;
                            proxy_redirect default;
        }
    }
    server {
            listen 443 ssl; # redirect to https
            server_name BBB.example.cn www.BBB.example.cn;
            
            ssl_certificate "/home/demontf/2005538_BBB.example.cn.pem";
            ssl_certificate_key "/home/demontf/2005538_BBB.example.cn.key";
            
            location / {
                          proxy_pass http://127.0.0.1:8091;
                          proxy_set_header X-Real-IP $remote_addr;
                          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                          proxy_set_header Host $http_host;
                          proxy_set_header X-NginX-Proxy true;
                          proxy_redirect default;
            }
    }

配置修改好之后, 需要重启 Nginx。