证书颁发邮件中的服务器证书,中间证书及自己保存的私钥文件key。共三个文件。本参考文档中将服务器证书保存为server.cer文件,中间证书保存为chain.crt,私钥保存为server.key。
(用文本工具打开证书文件UCA Global G2 Root.cer将其内容复制粘贴至证书SHECA RSA Domain Validation Server CA G3.cer或SHECA RSA Organization Validation Server CA G3.cer或SHECA DV Server CA G5或SHECA OV Server CA G5.cer文件内容末尾保存为chain.crt)
LoadModule ssl_module modules/mod_ssl.so (#加载SSL模块)
Include conf/extra/httpd-ssl.conf (#加载SSL配置文件)
#去掉上面两行前的"#"
到httpd-ssl.conf去
注意开启443端口的监听(https默认端口为443,可根据实际需求做调整)
Listen 443 https
对要使用证书的virtualhost进行配置
<VirtualHost _default_:443>
DocumentRoot "/myproject" #项目目录
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder On
SSLCipherSuite ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4
SSLCertificateFile /xx/xx/server.cer #服务器证书在服务器中存储路径及文件名
SSLCertificateKeyFile /xx/xx/server.key #私钥文件在服务器中存储路径及文件名
SSLCertificateChainFile /xx/xx/chain.crt #中间证书在服务器中存储路径及文件名
</VirtualHost>
httpd.conf文件中加载重写模块
LoadModule rewrite_module modules/mod_rewrite.so
取消该行前面的#
到80(http)的virtualhost中添加如下跳转语句 (默认是在httpd.conf文件中)
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R]
此跳转语句会将所有http请求转为https可根据公司实际业务情况进行添加调整。