1. 程式人生 > 其它 >nginx 配置多個 ssl 證書

nginx 配置多個 ssl 證書

nginx 配置多個 ssl 證書

  1. usr/local/nginx/conf/下,新增ssl 資料夾,專門存放ssl 證書

  2. 在server 中,以 443 埠監聽,並列寫多個server, 針對不同的server_name, 配置對應的ssl證書,

    注意:記得針對非https的普通域名也要建立虛擬機器【即建立單獨的server監聽埠】,否則只能訪問https下的域名

      server {
    
            #SSL 訪問埠號為 443
            listen 443 ssl; 
    
            #填寫繫結證書的域名
            server_name api.test1.com; 
    
            #證書檔名稱
            ssl_certificate ssl/1_api.test1.com_bundle.crt;
    
            #私鑰檔名稱
            ssl_certificate_key ssl/2_api.test1.com.key; 
            ssl_session_timeout 5m;
    
            #請按照以下協議配置
            ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
    
            #請按照以下套件配置,配置加密套件,寫法遵循 openssl 標準。
            ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; 
            ssl_prefer_server_ciphers on;
    
         
            
            
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
        }
      
    
      server {
    
              
            #SSL 訪問埠號為 443
            listen 443 ssl; 
    
             #填寫繫結證書的域名
            server_name law.test2.com; 
    
            #證書檔名稱
            ssl_certificate ssl/1_api.test2.com_bundle.crt;
    
            #私鑰檔名稱
            ssl_certificate_key ssl/2_api.test2.com.key; 
            ssl_session_timeout 5m;
    
            #請按照以下協議配置
            ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
    
            #請按照以下套件配置,配置加密套件,寫法遵循 openssl 標準。
            ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; 
            ssl_prefer_server_ciphers on;
    
    
            location /api {
                proxy_pass https://api.test1.com;
            }
    
            location / {
                root   /home/test2/webapp/api;
                index  index.html index.htm;
            }
            
            
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
        }
    
       # 這段不能少,否則無法監聽非 https 的 server
      server {     
            listen       80;
            server_name  api.test2.com;
            
            location /api {
                proxy_pass https://api.test1.com;
            }
    
            location / {
                root   /home/test2/webapp/api;
                index  index.html index.htm;
            }
            
            
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
        }
    
        
      
    
A little hug, little gift. All of little something. these are our meories.