前言
关于apache配置ssl证书,网上有很多重复的文章介绍,但我还是决定自己记录下来,
做的多了,发现其实很简单,记录一个好习惯:修改配置文件前一定要先备份,先备份!
修改文件后要重启才能生效!
本文将介绍如何配置,以及过程中遇到的问题。
简单来说,只有三步
1.在apache的bin文件同级目录新建文件夹cert,将证书文件复制进来;
2.打开apache的配置文件conf/httpd.conf,去掉ssl模块前面的#(两处);
LoadModule ssl_module modules/mod_ssl.so
...
Include conf/extra/httpd-ssl.conf
3.文件conf/extra/httpd.ssl
<VirtualHost _default_:myport>
# General setup for the virtual host
DocumentRoot "projectPath"
ServerName mydomin:myport
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
SSLHonorCipherOrder on
SSLCertificateFile "证书路径+证书_public.crt"
SSLCertificateKeyFile "证书路径+证书.key"
SSLCertificateChainFile "证书路径+证书_chain.crt"
<Directory "projectPath">
SSLOptions +StdEnvVars
Options +Indexes +FollowSymLinks +ExecCGI
AllowOverride All
#Order allow,deny
#Allow from all
Require all denied
Require all granted
</Directory>
</VirtualHost>
注意:配置信息可直接复制,然后将相同名称的配置注释掉
补充说明:
- 步骤2中,是开启ssl模块,那前提得是先有mod_ssl.so,可以在modules文件中检查,如果没有,添加配置语句,重启即可安装
- 如果还是失败,可以检查证书是不是有问题,具体参考之前的文章。传送门:
- http://t.csdnimg.cn/19AWlhttp://t.csdnimg.cn/19AWl
如果一切顺利,重启apache服务,到这里域名访问就可以带上一把小锁了。
关于apache无法在本地启动,这是个经常遇到的问题
检查问题:cmd命令行打开apache下的bin文件,输入httpd.exe启动,可以看到报错细节;
可能是端口占用 netstat -a 查看端口使用情况,避免apache端口与证书端口重复;
可能直接报错文件指定行配置错误,按提示修改即可,或者直接注释报错行。
最后带上我的启蒙文章,分享给大家。