关于Apache 挂载安全证书教程 https 403问题解决
关于Apache 挂载安全证书教程 https 403问题解决
这是个很大的坑!
关于403问题点链接跳转
网上的教程基本上都没有具体详细写,研究了一下午
第一次写博客各位大佬请勿喷!
首先我们需要到获取证书,获取证书的方法有许多种,在这我使用了阿里云免费的DV-SSL的证书,这个证书在小网站博客中已经绰绰有余,企业的朋友不建议用此证书。
在填写好所以的信息后,等待一小段时间即可获取到证书,在这阿里提供了5种证书类型,如下图
这里我就按照我的情况选择了Apache,下载完后解压出三个文件,分别是:证书文件:xxxxxpublice.ctr、证书链文件:xxxxxchain.ctr、**文件:xxxxx.key,在C:\wamp64\bin\apache\apache2.4.23\conf 下,放入以上三个文件。
打开httpd.conf开始进行配置
第一步:将httpd.conf下的#LoadModule ssl_module modules/mod_ssl.so、#Include conf/extra/httpd-ssl.conf、LoadModule socache_shmcb_module modules/mod_socache_shmcb.so 三处地方删除#符号
第二步:打开C:\wamp64\bin\apache\apache2.4.23\conf\extra\httpd-ssl.conf 文件,修改下的信息,这里可以使用搜索功能定位到该行,修改如下:
ServerName 你的域名
DocumentRoot 你的项目根目录
SSLEngine on 打开
SSLProtocol all -SSLv2 -SSLv3 # 添加SSL协议支持协议,去掉不安全的协议。
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM # 修改加密套件。
SSLHonorCipherOrder on 打开
SSLCertificateFile cert/domain name1_public.crt # 将domain name1_public.crt替换成您证书文件名。SSLCertificateKeyFile cert/domain name1.key # 将domain name1.key替换成您证书的**文件名。
SSLCertificateChainFile cert/domain name1_chain.crt # 将domain name1_chain.crt替换成您证书的**文件名;
所有证书链开头如果有#字符,需要删除。
重点在这里来了,在以上全部完成后,我打开带https的我的网站显示403,原因是权限不足无法访问,于是我在httpd.conf里徘徊了好久,最终在
DocumentRoot "xxx"和<Directory “xxx”>更改了项目根目录
在结尾处将Require local修改为Require all granted,保存
重启wampserver,完美解决403问题