Apache上安装ssl证书

293 阅读1分钟

Apache上安装ssl证书,记录自己在windows服务器的Apache上安装ssl证书的全过程,帮大家避免踩坑

1.首先点击下载ssl证书

下载好后是一个压缩包, 编号_域名_apache.zip,我们把它解压缩会得到三个文件,分别是:

编号_域名.key

编号_域名_chain.crt

编号_域名_public.crt

2.修改Apache

  • 打开到Apache服务器的目录,直接在Apache2.4目录下新建目录cert,证书解压放在该目录下;
  • 找到conf目录下的httpd.conf(apache配置文件,根据具体情况,有的叫http-phpwamp.conf),找到下面两句话将前面的#删除
#LoadModule ssl_module modules/mod_ssl.so
#Include conf/extra/httpd-ssl.conf

此时重启Apache可能会遇到Apache启动失败,因为httpd-ssl.conf文件还没有配置好

3.配置httpd-ssl.conf文件

一般会在Apache2.4/conf/extra/httpd-ssl.conf

Listen 443
<VirtualHost *:443>
  SSLEngine on
  SSLProtocol all -SSLv2 -SSLv3
  SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
  SSLHonorCipherOrder on
  ErrorLog "D:/soft/PHPWAMP_IN2/phpwamp/server/Apache2.4/logs/error.log" 
  TransferLog "D:/soft/PHPWAMP_IN2/phpwamp/server/Apache2.4/logs/access.log"
 
 
  SSLCertificateFile D:/soft/PHPWAMP_IN2/phpwamp/server/Apache2.4/cert/编号_域名_public.crt
  SSLCertificateKeyFile D:/soft/PHPWAMP_IN2/phpwamp/server/Apache2.4/cert/编号_域名.key
  SSLCertificateChainFile D:/soft/PHPWAMP_IN2/phpwamp/server/Apache2.4/cert/编号_域名_chain.crt
 
  DocumentRoot  "D:/www/ai/public" #域名指向的目录
  ServerName 域名:443 #修改成自己的域名
  ServerAdmin admin@localhost.com
  <Directory />
    Options +Indexes +FollowSymLinks +ExecCGI
    AllowOverride All
    Order allow,deny
    Allow from all
    Require all granted
  </Directory>
</VirtualHost>

如果此时Apache还是启动失败,则注释下面两行代码

SSLSessionCache "shmcb:${SRVROOT}/logs/ssl_scache(512000)"
SSLSessionCacheTimeout 300

此时重启Apache,基本可以重启成功了。

使用https访问域名前,先确认443端口已在服务器中的防火墙中做好安全策略(即入栈规则中添加443端口可访问,否则还是无法用https访问域名)

大家如果在配置过程当中遇到什么问题可以随时在评论处留言,我会及时回复大家