Linux+nginx使用ssl配置https

1.首先要去服務器上面申請證書,申請證書步驟我就不多說了,必須有域名才能申請哦,我這裏使用的是騰訊雲服務器,下載證書

2.解壓之後,找到nginx

3.進入nginx配置文件目錄,我安裝的nginx是/usr/local/nginx下,把剛剛的nginx證書放入

 

4.配置nginx.conf文件,我這裏使用了重定向,配置簡單的可以不使用

server {
         listen 443; 
         server_name hotel.gzjojo.com;  #填寫綁定證書的域名
         ssl on; #啓用 SSL 功能        
         ssl_certificate  /usr/local/nginx/conf/1_hotel.gzjojo.com_bundle.crt;  #證書文件名稱        
         ssl_certificate_key  /usr/local/nginx/conf/2_hotel.gzjojo.com.key; #私鑰文件名稱
         ssl_session_timeout 5m;
         ssl_protocols TLSv1 TLSv1.1 TLSv1.2;  #請按照這個協議配置
         ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;  #請按照這個套件配置,配置加密套件,寫法遵循 openssl 標準。
         ssl_prefer_server_ciphers on;
        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_set_header X-Forwarded-Proto https;
                proxy_connect_timeout       20;
                proxy_read_timeout          20;
                proxy_send_timeout          20;
                proxy_pass https://jojo_hotel_server;
        }
        location /hotel/img_server/ {
            alias /data/yby-img-file/;#指定圖片存放路徑 
                        
        }
         location /hotel/html/ {
            alias /root/yby-html-file/;#指定HTM存放路徑 
            
            #nginx跨域請求配置
            add_header Access-Control-Allow-Origin *;
            add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
            add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-                         Modified-Since,Cache-Control,Content-Type,Authorization';
            if ($request_method = 'OPTIONS') {
                return 204;
            }
        }
    }
    server{
        listen  80;#監聽18081端口,可以改成其他端口
        server_name  hotel.gzjojo.com;#當前服務的域名
        rewrite ^(.*) https://$server_name$1 permanent;
    }

5.配置成功之後測試nginx.conf是否成功 /usr/local/nginx/sbin/nginx -t

6.啓動nginx就Ok了

如果 /usr/local/nginx/sbin/nginx -t這一步報錯,說沒有ssl

nginx: [emerg] unknown directive "ssl"

只有重新安裝nginx,安裝教程按這個來就不會錯誤了

教程:https://www.runoob.com/linux/nginx-install-setup.html

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章