记一次https的免费ssl证书安装及配置过程--window系统

作为之前没接触过ssl证书并且不了解服务器的人,这次第安装ssl证书及配置的过程真是让人绞尽脑汁! 未免忘记,赶紧来总结一下。

一、阿里云免费ssl证书的申请及安装

既然安装ssl证书,首先得要有ssl证书才行。网上搜了一些例如freessl,完全按照其步骤配置或者是一件部署,结果无用。最后又在阿里云找,最后终于找到了一个申请及下载免费证书的教程了,主要流程是:前往 阿里云SSL证书购买页面先选择 单个域名 > DV域名级SSL > 免费版 > DigiCert,具体教程地址是:https://help.aliyun.com/document_detail/148895.html?spm=a2c4g.11186623.4.1.484726aaUsO7kB

免费版购买时0元,支付后进入“证书控制台”,点击“证书申请”,按要求填写绑定的域名及联系人相关信息。

点击“下一步”,会进入“验证信息”页面,当进入这个页面的同时时,阿里云会自动在你的域名解析中增加一个https的域名(姑且这么说吧),是一个主机记录为“_dnsauth”,记录类型为“TXT”的域名,与当前这个验证信息页面里显示的值是一样的。其实就是阿里云系统自动为你增加了一个https域名,如果是其他平台,得要手工到域名管理页面进行解析添加。

验证后提交审核,会提示

确认后会回到证书列表页面,可以在这里下载你的证书,下载页面会让你选择服务器类型,我这里使用的是Apache

至此,证书已经申请并安装完毕了。下载的证书如下图:1个密钥文件,1个_chain证书,1个_public证书。

二、配置apache的ssl证书

这里使用的是laragon,laragon集成了apache,所以实际是配置laragon中apache的ssl证书
这里要修改2个文件:httpd.conf  和  httpd-ssl.conf

httpd.conf文件路径是: C:\laragon\bin\apache\httpd-2.4.35\conf

httpd.conf中要修改两行,我的mod_ssl.so是默认放开的,所以只需要修改一个就可以了

#LoadModule ssl_module modules/mod_ssl.so  #删除行首的配置语句注释符号“#”加载mod_ssl.so模块启用SSL服务,Apache默认是不启用该模块的。
#Include conf/extra/httpd-ssl.conf  #删除行首的配置语句注释符号“#”。       

起初在放开Include conf/extra/httpd-ssl.conf后,尝试重启apache,无法正常启动,提示httpd-ssl.conf的某些配置错误。

httpd-ssl.conf文件路径是:C:\laragon\bin\apache\httpd-2.4.35\conf\extra 

于是又开始寻找解决办法。

最后看到了一篇帖子,描述了解决办法,地址是:https://blog.csdn.net/tnektnek/article/details/95659692

这里为方便观看,我直接贴过来了:

打开httpd-ssl.conf,修改

<VirtualHost _default_:443>
<Directory  "c:/laragon/www">    #这里修改为你自己的服务器主目录,要用双引号括起来
        Options +Indexes +Includes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
</Directory>
#   General setup for the virtual host
#DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs"
DocumentRoot "C:/laragon/www/youproject/public"     #这里也要修改为你自己的项目主目录,要用双引号括起来
#ServerName localhost:443         
ServerName www.07682.com:443     #这里要修改为你的https域名,就是注册证书时绑定的域名,端口号443
ServerAdmin admin@localhost
ErrorLog "C:/wamp/bin/apache/apache2.2.8/logs/error.log"
TransferLog "C:/wamp/bin/apache/apache2.2.8//logs/access.log"

下面3个就是你前面在阿里云申请的ssl证书,CertificateFile---_public证书,SSLCertificateChainFile---_chain证书,SSLCertificateKeyFile---密钥文件,修改成你自己的路径即可

SSLCertificateFile "C:/wamp/bin/apache/apache2.2.8/etc/httpd/ssl/2_www.07682.com_public.crt"   
SSLCertificateKeyFile "C:/wamp/bin/apache/apache2.2.8/etc/httpd/ssl/3_www.07682.com.key"
SSLCertificateChainFile "C:/wamp/bin/apache/apache2.2.8/etc/httpd/ssl/1_root_bundle_chain.crt"

重点是上面的红色字。一般网上教程就教配置这三个证书文件。但是没告诉我们需要把这个文件httpd-ssl.conf的其它地址也修改,比如上面的日志地址等。因为原文件指向的日志地址不存在。所以apache就启动不了。因为把这个文件的上些地址也改成存在的文件路径。

重启就成功。这个问题搞了两天。希望对一些朋友一点启示吧。反正我是这样解决的。

如配置多个域名,则直接在<VirtualHost _default_:443>内部添加即可:
DocumentRoot "C:/laragon/www/youproject/public" 
ServerName www.07682.com:443   
ServerAdmin admin@localhost

SSLCertificateFile "C:/wamp/bin/apache/apache2.2.8/etc/httpd/ssl/2_www.07682.com_public.crt"   
SSLCertificateKeyFile "C:/wamp/bin/apache/apache2.2.8/etc/httpd/ssl/3_www.07682.com.key"
SSLCertificateChainFile "C:/wamp/bin/apache/apache2.2.8/etc/httpd/ssl/1_root_bundle_chain.crt"

这样还不行,还要将下载的证书文件放到上面对应的路径下。我使用的laragon配置的路径是:C:\laragon\etc\httpd\ssl 

三、遇到的异常状况

1、apache无法启动,提示错误

这里其实还是httpd-ssl.conf的配置问题,再进入httpd-ssl.conf进行修改。找到

将这两句注释掉,再尝试重启apache...  

又出现新的错误提示了

这里提示很明确,提示什么在相同ip端口下不能重复定义监听,先不管,找到对应路径下的文件

发现第一行也有个 Listen 443  ,尝试将这句话注释掉,再次重启apache... 

终于,启动成功了。

2、访问域名错误

提示1:It works!

这个问题还是出在 httpd-ssl.conf 配置文件中。下面是默认的配置并开启的,所以当访问域名时,会调用这里的配置,所以就显示默认的It works,注释掉即可


提示2:You don't have permission to access /shop on this server.   没有权限

这个应该是比较常见的,是httpd.conf的配置问题,进入到httpd.conf修改权限即可,通常是

AllowOverride none  修改为 AllowOverride All

Require all denied  修改为 Require all granted

具体是哪几处我记不住了,反正看到就改掉。

3、配置完成后,只能访问项目‘/’根目录路由,访问任何带子目录的路由例如‘/blog’都会提示找不到URL错误

访问域名https://test.myproject.com/正常

访问域名https://test.myproject.com/blog  报错找不到url

网站找了很多配置的方法都操作了,结果都不行,而且配置应该也是没有问题的

最后发现问题是,之前把laragon的根目录配置到了/www/blog/public目录下了,这个跟httpd-ssl.conf里配置的DocumentRoot应该冲突了,

所以重新把laragon的根目录改回到www下,尝试访问所有路由,都可以正常访问了。

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值