因为公司业务主要是在微信上进行开展的,所以作为程序员的我们每天的开发任务就都是在与微信打交道,这个时候我们就需要在本地配置端口映射到外网,方便我们在微信客户端进行调试。
最近某种需要,所以需要配置 https (443端口) 进行开发。 因为我们本地开发环境使用的是 wampserver -- apache ,也就是我需要在apache上配置https。
以往在linux上配置 https 挺容易的,所以一开始也就以为这一次可以一次性解决。所以我的操作步骤如下:
1、 在腾讯云申请了相关ssl证书,并把证书放在C:\wamp64\bin\apache\apache2.4.23\conf 目录下;
2、编辑Apache根目录下 conf/httpd.conf 文件,找到 #LoadModule ssl_module modules/mod_ssl.so
和 #Include conf/extra/httpd-ssl.conf
,去掉前面的#
号;
3、为了测试引入是否正确,于是我重启了wamp,这个时候意外发生了,wamp一直是橙色的,并不是环保色(绿色);
我尝试把 LoadModule ssl_module modules/mod_ssl.so
继续加上# 重启后发现还是不能启动,
再把 Include conf/extra/httpd-ssl.conf 注释掉,重启之后就可以正常了。
于是我确定是这个httpd-ssl.conf文件有问题。
最后发现文件中有几处 写着 c:\apache\...,经过确认以及分析,这其中
SSLCertificateKeyFile
SSLSessionCache
SSLCertificateFile
SSLCertificateChainFile
这四句话后面所带的路径其实就是我们自己的证书的真实路径,一开始没有修改 而是直接按照腾讯云的指引去新写一个,最后总是不行。
所以修改之后我们的代码应该是这样子的
<VirtualHost *:443>
DocumentRoot "c:/wamp64/www/{项目路径}"
ServerName www.a.com:443
ServerAdmin admin@example.com
ErrorLog "c:/wamp64/logs/error.log"
TransferLog "c:/wamp64/logs/access.log"
SSLEngine on
SSLCertificateFile "c:/wamp64/bin/apache/apache2.4.23/conf//2_www.a.com.crt"
SSLCertificateKeyFile "c:/wamp64/bin/apache/apache2.4.23/conf/3_www.a.com.key"
SSLCertificateChainFile "c:/wamp64/bin/apache/apache2.4.23/conf/1_root_bundle.crt"
</VirtualHost>
最后,怀着试一下的心情重启了一下wamp,有意思的事情发生了,正常启动