1、SSL证书下载
证书成功颁发后,登陆www.zzy.cn->业务管理->SSL证书服务, 查询->下载证书。
2、防火墙端口开放说明
(1) https默认端口为443。根据实际需求,您可以选择其他端口,Apache配置、防火墙等请同步修改。
(2) 如果您使用的是云服务器,请登录云平台系统,安全组增加TCP-443 端口的入站规则。
(3) 如果windows防火墙有启用,增加开放TCP-443 端口的入站规则。
3、关于Apache的安装
请安装有支持SSL模块的apache版本。
4、配置文件备份
备份Apache目录的以下配置文件,推荐增加时间戳命名:
conf/httpd.conf -> httpd.conf.20210101
conf/extra/httpd-ssl.conf -> httpd-ssl.conf.20210101
conf/extra/httpd-vhosts.conf -> httpd-ssl.conf.20210101
5、证书上传到服务器
进入Apache目录/conf, 创建子目录ssl;
解压证书包,上传apache目录下的3个文件:
域名.key:私钥
域名.crt:公钥
域名.ca.crt:中级证书+ROOT证书
6、编辑httpd.conf
打开Apache目录/conf/httpd.conf配置文件,去掉以下三行的开头注释符号#:
LoadModule ssl_module modules/mod_ssl.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
Include conf/extra/httpd-ssl.conf
7、编辑httpd-ssl.conf
打开Apache目录/conf/httpd-ssl.conf配置文件
(1) 去掉默认配置:
Listen 443,如果开头有注释符号#,删除掉
删除默认的<VirtualHost _default_:443>整段配置。
从httpd-vhosts.conf拷贝对应站点的VirtualHost配置过来,80改为443
(2) VirtualHost配置段内增加SSL相关配置:
蓝色部分为增加的SSL配置
域名.crt、域名.key、域名.ca.crt请注意替换您的实际文件名
<VirtualHost *:443>
# 前面这些同HTTP/80的站点配置
DocumentRoot "D:/Apache24/htdocs"
ServerName www.zzy.cn
ServerAlias zzy.cn www.zzy.com
# 以下为新增的SSL配置
SSLEngine on
SSLProtocol all -SSLv3 -SSLv2 # 禁用不安全协议SSL2.0、SSL3.0
SSLCertificateFile "conf/ssl/域名.crt" # 公钥证书
SSLCertificateKeyFile "conf/ssl/域名.key" # 私钥
SSLCertificateChainFile conf/ssl/域名.ca.crt" # 中级证书+ROOT证书
</VirtualHost>
8、配置测试
任务栏->运行->输入cmd,点击打开"命令提示符";
输入:Apache目录binhttpd.exe -t
例如:D:Apache24binhttpd.exe -t
如果提示Syntax Ok,说明站点配置正确;如果返回错误,请根据错误信息调整配置文件。
9、启动/重启Apache,浏览器输入https://域名访问测试。
10、http自动跳转https配置
(1) 配置自动跳转前,请先用https访问您的网站,确认网站正常显示。
(2) httpd-vhosts.conf修改:
打开extra/httpd-vhosts.conf,找出对应的VirtualHost站点配置,增加如下配置:
RewriteEngine on
RewriteRule ^/?(.*)$ https://%{SERVER_NAME}/$1 [R=301,L]
(3) 参考前面说明,测试配置文件是否正确
(4) 重启Apache服务,输入http://域名,观察是否自动跳转到https://域名。