最近在看 HTTP权威指南 看到介绍了HTTPS的ssl,本身就动手测试了下,将步骤记录下php
什么是HTTPS?百科是这样解释的。HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道。即HTTP下加入SSL层,HTTPS的安全基础是SSL,所以加密的详细内容就须要SSL。如今它被普遍用于互联网上安全敏感的通信,例如交易支付等。html
本人ubuntu14.04已经安装了
nginx
建立证书目录 ubuntu
mkdir ~/ssl/浏览器
拷贝 CA.sh到证书目录 安全
cp /usr/lib/ssl/CA.sh ~/ssl/服务器
生成证书app
cd ~/ssl/ && sh CA.sh -newcasocket
根据提示填写信息完成后,在demoCA下会生成证书文件,测试
其中demoCA/private/cakey.pem为ca证书私钥,demoCA/cacert.pem为ca根证书
生成私钥: openssl genrsa -des3 -out nginx.key 1024
生成csr文件: openssl req -new -key nginx.key -out nginx.csr
生成证书&签名: openssl ca -in nginx.csr -out nginx.crt
虚拟主机监听443端口并配置证书
重启服务,输入密码
目前免费证书机构而且被浏览器支持信任的不对,startssl算是一家了,有须要的能够本身去申请,官网网址:https://startssl.com
申请演示博文:Startssl 如今就启用 HTTPS,免费的!
资源文件必须改为https的
简单方法就是全部的资源文件都不要写协议,例如
"http://www.54php.cn/default/info.js"=>"//www.54php.cn/default/info.js",
这样依赖浏览器来本身决定协议是http仍是https