nginx開啓ssl證書,實現https安全訪問

按照騰訊雲要求獲取ssl證書。

騰訊雲獲取ssl證書

nginx模塊開啓ssl.

  • 確保nginx安裝了ssl模塊,否則啓動會報錯nginx: [emerg] unknown directive "ssl",具體安裝參考
  • 將在騰訊雲獲取的nginx證書(根據服務器不同會生成不同的ssl文件,這裏選擇nginx),放在nginx的某個目錄下,筆者跟conf文件夾平級建了cert文件夾。
  • 配置nginx.conf文件
server {
        listen     80;
        listen 443 ssl; //同時支持https和http要這樣寫,注意不能用 ssl on
        server_name  www.domain.cn;//監聽的域名
        ssl_certificate ../cert/1_www.domain.cn_bundle.crt;//獲取到的crt文件
        ssl_certificate_key ../cert/2_www.domain.cn.key;//ssl的key
        ssl_session_timeout 5m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照這個協議配置
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照這個套件配置
        ssl_prefer_server_ciphers on;
	}
  • 測試一下,看配置文件是否正確,/usr/local/nginx/sbin/nginx -t。若配置無誤,顯示成功。
  • 重啓nginx,如無意外,網站目前支持https和http同時訪問。

若https不能訪問,從以下排查原因

  • 若使用了阿里雲的ecs,則需要把80和443端口暴露出來。可以telnet 測試,
  • 檢查本機防火牆,是否開啓。
  • 檢查443端口是否監聽,若沒有監聽,則將nginx關閉/usr/local/nginx/sbin/nginx -stop,然後重新開啓/usr/local/nginx/sbin/nginx注意不要nginx -s reload
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章