http://slproweb.com/products/Win32OpenSSL.htmlhtml
安装成功后命令行执行web
1.私钥,生成的文件默认在系统用户目录下apache
openssl genrsa -des3 -out server.key 2048
2.生成csr文件(签署申请文件)【生成证书请求文件CSR】该命令先进入交互模式,让你填一堆东西,参考下图windows
openssl req -new -out server.csr -key server.key
要注意的是Common Name这里,要填写成使用SSL证书(即:https协议)的域名或主机名,不然浏览器会认为不安全。例如:若是之后打算用https://study.dev/xxx 这里就填写study.dev浏览器
3.生成CA的key文件【生成CA的证书】安全
前面提过X.509证书的认证者老是CA或由CA指定的人,因此得先生成一个CA的证书ide
openssl req -new -x509 -key server.key -out ca.crt -days 3650
4.最后用第3步的CA证书给本身颁发一个证书玩玩google
openssl x509 -req -days 3650 -in server.csr -CA ca.crt -CAkey server.key -CAcreateserial -out server.crt
执行完之后,cert目录下server.crt 就是咱们须要的证书。固然,若是要在google等浏览器显示出安全的绿锁标志,本身颁发的证书确定很差使,得花钱向第三方权威证书颁发机构申请(即:第4步是交给权威机构来作,咱们只须要提交server.csr,哦,还有毛爷爷就行了)spa
1.apache配置文件中对应域名配置里面加入ssl证书配置的内容命令行
<VirtualHost *:80> ServerAdmin v_lihuan1@xdf.cn DocumentRoot "D:/www/htdocs" ServerName study.dev ServerAlias study.dev ErrorLog "logs/study.dev-error.log" CustomLog "logs/study.dev-access.log" common <Directory /> Options FollowSymLinks AllowOverride All RewriteEngine on RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^(.*)?$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R] </Directory> </VirtualHost>
2.讲生成好的证书文件放在apache的对应目录下
3.修改对应的ssl配置文件(extra目录下的)
<VirtualHost _default_:443> DocumentRoot "D:/www/htdocs" ServerName study.dev:443 SSLEngine on SSLCertificateFile "conf/ssl.crt/server.crt" SSLCertificateKeyFile "conf/ssl.key/server.key" SSLCertificateChainFile conf/ssl.crt/server.crt </VirtualHost>
4.重启apache(确保HOST文件已经添加了对应的域名)