記一次nginx配置https

  • nginx版本1.14.0,openssl版本1.0.2
    nginx -v
    openssl version
  • 拿到的證書格式分別為.crt(公鑰)和.key(私鑰)文件
    • .crt文件格式,為多段begin-end
      -----BEGIN CERTIFICATE-----
      ...
      -----END CERTIFICATE-----
      -----BEGIN CERTIFICATE-----
      ...
      -----END CERTIFICATE-----
      
    • .key文件格式
      -----BEGIN RSA PRIVATE KEY-----
      ...
      -----END RSA PRIVATE KEY-----
      
  • nginx配置
    • server配置
      server {
          ...
          listen 443 ssl;                                                                         #nginx 1.15.0后舍棄 'ssl on;' 用法
         #keepalive_timeout 75;                                                                   #默認(rèn)TCP連接保持的時間75s
      
          ssl_certificate /data/crt/api/Nginx/api.crt;                                            #引入公鑰證書
          ssl_certificate_key /data/crt/api/Nginx/api.key;                                        #引入私鑰key
          ssl_session_cache   shared:SSL:10m;                                                     #設(shè)置session緩存的類型和大小
          ssl_session_timeout 10m;                                                                #session緩存的ssl參數(shù)過期時間, 默認(rèn)5m
          ssl_ciphers AES128-SHA:AES256-SHA:RC4-SHA:DES-CBC3-SHA:RC4-MD5;                         #選擇加密套件
          ssl_prefer_server_ciphers on;                                                           #優(yōu)先使用服務(wù)端加密套件
         #ssl_protocols       TLSv1 TLSv1.1 TLSv1.2;                                              #加密協(xié)議,默認(rèn)即為該配置
      
          add_header Strict-Transport-Security "max-age=31536000; includeSubdomains";             #啟用HSTS:HTTP嚴(yán)格傳輸安全
          add_header Set-Cookie "Secure";                                                         #設(shè)置cookie加密傳輸
         #add_header X-Frame-Options "SAMEORIGIN";                                                #只允許頁面可在相同域名頁面frame、iframe使用
      
         #fastcgi_param HTTPS $https if_not_empty;                                                #php用 fastcgi的參數(shù)
      }
      
    • http重定向至https
      server {
          listen 80;
          server_name xxx.com;
          return 301 https://$server_name$request_uri;
      }
      


參考

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容