本教程使用StartSSL提供的免费SSL证书+LNMP环境为例
Step01: 申请SSL证书,然后下载相关证书文件
如何申请StartSSL免费SSL证书?自己Google或百度相关教程,这里就不写了。
Step02: 操作服务端,创建存放证书文件目录,上传之
mkdir -p /usr/local/nginx/conf/ssl cd /usr/local/nginx/conf/ssl
Step03: 将中间证书和域名证书合并成一个,顺便更改根证书后缀
cat sub.class1.server.ca.pem >> yourdomain.crt && rm -f sub.class1.server.ca.pem && mv ca.pem ca.crt
Step04: 检查一下刚才合并的域名证书有无出错
vim yourdomain.crt
END和BEGIN必须是上下隔开,不可以同一行并排,否则会出错的。
-----END CERTIFICATE----------BEGIN CERTIFICATE-----
如果你见到的内容是上面这样,那就手动修改一下,改成上下两行。
-----END CERTIFICATE----- -----BEGIN CERTIFICATE-----
Step05: 如果你在StartSSL申请的证书有填写key密码的话,那么就得配置key文件避免重启Nginx时需要输入key密码
openssl rsa -in yourdomain.key -out yourdomain.key.unsecure #需要输入你的key密码
Step06: 添加SSL参数到nginx的域名配置文件
vim /usr/local/nginx/conf/vhost/yourdmain.conf
在server {}底部添加SSL参数
server { listen 443; server_name my.miefen.com; index index.html index.htm index.php; root /home/wwwroot/my.miefen.com; ssl on; ssl_certificate /usr/local/nginx/conf/ssl/my.miefen.com.crt; ssl_certificate_key /usr/local/nginx/conf/ssl/my.miefen.com.key.unsecure; ssl_trusted_certificate /usr/local/nginx/conf/ssl/ca.crt; ssl_protocols TLSv1 TLSv1.1 TLSv1.2 SSLv3; ##如果不加入SSLv3的话, IE6用户无法访问你的网站,反之如果不想IE6用户访问你的网站的话,去掉SSLv3即可 ssl_session_cache builtin:1000 shared:SSL:10m; ssl_prefer_server_ciphers on; ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS"; location ~ .*.(php|php5)?$ { fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_index index.php; fastcgi_param HTTPS on; include fastcgi.conf; } access_log off; }
按一下”Esc”键退出编辑模式,按住Shift不放再按两下”z”即可保存
Step07: 检查nginx文件配置是否正确
/usr/local/nginx/sbin/nginx -t
如果没有错误提示的话,重启nginx即可
/etc/init.d/nginx restart
完。
本站文章除注明转载外, 均为本站原创编写.
转载请注明:文章转载自:咩粉——探寻MJJ的奥秘 [https://miefen.com]
本文标题:Nginx配置SSL部署HTTPS服务
本文地址:https://miefen.com/201408/configuring-https-servers-on-nginx
支持技术博。
惊现超牛叉
just tell you it’s test.
test your sister