坚持创作不容易,若本博文对你有帮助,请给我一大赞,非常感谢!!!如果能评论下,点评下,我将无限感激!
环境说明
1、ubuntu16
2、Apache/2.4.18 (Ubuntu)
3、工具 winscp(修改文件可视化操作比较方便) xshell
准备好证书文件
1、从证书控制台上下载的证书文件,本文使用的是证书系统创建的CSR,里面包含了:证书私钥文件xxxxxxxx.key、证书公钥文件public.pem、证书链文件chain.pem。
总体思路
1、上传证书到服务器上
2、修改配置文件(启用mod_ssl模块,配置证书路径等)
3、重启Apache
4、测试https域名能否正常访问
具体步骤 (感谢这两位博主的热心分享,给你们点赞 博主一 博主二)
1、在Apache的安装目录下(我使用命令安装apache的,路径是/usr/local/Apache24),创建cert目录。将下载的全部文件拷贝到cert目录中。(建议使用自动生成的,方便快捷)如果申请证书时是自己创建的CSR文件,请将对应的私钥文件放到cert目录下并且命名为xxxxxxxx.key;
2、打开 apache 安装目录下 conf 目录中的 httpd.conf 文件,找到以下内容并去掉“#”:
#LoadModule ssl_module modules/mod_ssl.so (如果找不到请确认是否编译过 openssl 插件)
#(有两种方案,一种是修改这个https-ssl.conf文件,另一种是修改/etc/apache2/sites-available路径下default-ssl.conf文件)
#Include conf/extra/httpd-ssl.conf(方案二不需要注释掉这句, 建议采用方案二,不需要注释这句)
3、配置证书路径
方案一 修改启用https-ssl.conf文件(建议采用方案二,在下面)
# 注意!!下面的属性如果开头有 '#'字符,请删除掉
# 添加 SSL 协议支持协议,去掉不安全的协议
SSLProtocol all -SSLv2 -SSLv3
# 修改加密套件如下
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
SSLHonorCipherOrder on
# 证书公钥配置
SSLCertificateFile "${SRVROOT}/cert/xxxxpublic.pem"
# 证书私钥配置
SSLCertificateKeyFile "${SRVROOT}/cert/xxxxxxx.key"
# 证书链配置
SSLCertificateChainFile "${SRVROOT}/cert/xxxchain.pem"
修改效果
方案二 修改启用default-ssl.conf文件
进入 /etc/apache2/sites-available 下找到default-ssl.conf对照下面代码修改
1)文件位置
2)添加内容
<IfModule mod_ssl.c>
<VirtualHost _default_:443>
ServerAdmin webmaster@localhost
DocumentRoot (项目目录)
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.
SSLEngine on
# 证书文件路径
SSLCertificateFile /usr/local/Apache24/cert/xxxxcert.pem
# 证书秘钥文件路径
SSLCertificateKeyFile /usr/local/Apache24/cert/xxxxprivkey.pem
# 证书链路径
SSLCertificateChainFile /usr/local/Apache24/cert/xxxchain.pem
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
</VirtualHost>
</IfModule>
3)修改后的效果
4、启用配置sudo a2ensite default-ssl.conf
sudo service apache2 reload 或者 sudo systemctl restart apache2
5、开启443端口
若使用的是云主机,要开启端口的地方有两个,
一个是系统(若开启了防火墙)
另一个是云主机,若使用的是阿里云,则直接在云主机实例控制台页面中左侧栏中选择安全组,然后进行配置
6、测试
在浏览器上输入 https://yourdomain(你的域名).com
最后,恭喜你配置成功!!!
7、配置http重定向 请参考该博文 Apache Http重定向到Https
若有疑问或者无法成功配置者请联系我,大家多多交流!