發(fā)表日期:2016-12 文章編輯:小燈 瀏覽次數(shù):2759
啟用SSL開啟HTTPS訪問已經(jīng)是當(dāng)今的主流趨勢了,本文旨在提供在nginx上快速配置SSL的簡易指南。
現(xiàn)在證書越來越便宜,GoDaddy證書只需要幾美元,甚至StartSSL、AlphaSSL、騰訊云或七牛云等都可以免費申請到SSL證書。如何申請免費證書本文不再贅述。
把申請到的證書文件(包含證書鏈和私鑰)上傳到服務(wù)器,保存到一個nginx可以讀取到的地方,如/home/ssl/:
/home/ssl/yourname.cer 為證書鏈/home/ssl/yourname.key 為公鑰在nginx配置文件中,把原來server塊中的80端口(http訪問)的語句改為443端口,并引入SSL各項配置,同時啟用HSTS(HTTP嚴(yán)格傳輸安全):
server { listen 443 ssl; server_name yourname; root /home/www/yourname; index index.php index.html; ssl_certificate /home/ssl/yourname.crt; ssl_certificate_key /home/ssl/yourname.key;ssl_stapling on; ssl_stapling_verify on;add_header Strict-Transport-Security "max-age=31536000";access_log /var/log/nginx/yourname.log combined;location / { # }} 然后再新建一個server塊,目的是把http訪問重定向到https:
server { listen 80; server_name yourname; rewrite ^ https://$host$request_uri? permanent; } 保存后重載nginx即可。
service nginx reload