參考文獻:
2. CentOS下在Nginx中添加SSL證書以支持HTTPS協議訪問
4、nginx強制使用https訪問(http跳轉到https)
5、nginx ssl 107 (net::ERR_SSL_PROTOCOL_ERROR) 無法與服務器建立安全連接 解決方法
配置過程如下:
我的nginx是 yum 安裝 具體安裝過程參考:[轉]CENTOS 6.5 配置YUM安裝NGINX+服務器負載均衡
一、安裝相關支持庫: (參考 NginxV1.8.0安裝與配置)
yum -y install gcc gcc-c++ autoconf
yum -y install openssl openssl-devel
更新到最新的支持庫
二、編輯配置文件
# vim /etc/nginx/conf.d/default 或 vim /etc/nginx/conf.d/example_ssl.conf
我的是 vim /etc/nginx/conf.d/example_ssl.conf
配置示例
# HTTPS server # server { listen 443 ; server_name localhost; ssl on; ssl_certificate /etc/nginx/ssl/xx.com.crt; ssl_certificate_key /etc/nginx/ssl/xx.com.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { root /usr/share/nginx/html; index index.html index.htm; } }
三、重啟Nginx,完成
sudo service nginx restart
重啟過程中一般會詢問PEM pass phrase,這是因為RSA私鑰文件有密語保護。CA在頒發證書的時候設定了一個密語保護,在知道密語的情況下,可以用OpenSSL去除保護,重啟Nginx的時候就不會提示輸入密語。
可能碰到的問題:
四、nginx強制使用https訪問(http跳轉到https)
配置
server { listen 80; server_name test.com; ........ rewrite ^(.*)$ https://$host$1 permanent; #添加這行強制跳轉
...... }
