apache服务器配置ssl证书,实现http转化成https

很早之前就在接触了https,但是这期间瞎弄了几次,都没折腾明白,所以就一直没有弄了。最近这几天看到很多博客都是https了,而且以后的网站肯定都要普及到https,所以,在无数次想放弃的尝试中,我终于是把网站改成https了。在动手之前,我建议你备份一份没有修改前的文件,以免启动不了apache而又找不出哪里出问题导致网站GG。所以在动手修改之前最好是备份,养成备份的习惯对以后也是有很大的帮助的。

如果想了解https的概念和工作原理,可以看我之前的《https是什么?https的工作原理》。好了,不废话,直接进入今天的主题,在Apache服务器配置ssl。

一、申请ssl证书

现在有免费的DV证书,阿里云好像不可以申请了,我的是在七牛上面申请的。具体申请的流程还是自行百度吧,当我们申请完成以后,直接选择下载证书,证书格式选择适用apache的就好了,然后解压之后上传到到服务器上。

二、安装证书

由于我的安装环境是xampp。可能不是特别具有代表性。仅供参考

1.1 首先在xampp/apache/conf 下创建一个ssl文件夹

解压上传后的证书,里面包含3个文件

将3个文件复制到之前创建好的ssl文件夹内,方便后面写路径

2.2 配置相关文件

编辑APache根目录下 conf/httpd.conf 文件,

找到 #LoadModule ssl_module modules/mod_ssl.so 、 #Include conf/extra/httpd-ssl.conf 和 #Include conf/extra/httpd-vhosts.conf,去掉前面的#号注释。

接下来要添加https端口 443

编辑apache跟目录下 conf/extra/httpd-vhosts.conf文件

在文件末尾添加如下代码

    DocumentRoot "/xampp/htdocs/wordpress"                //wordpress是我的网站根目录,请根据个人情况修改
    ServerName www.cj1029.com                            
    SSLEngine on
    SSLCertificateFile "conf/ssl/www.cj1029.com.cer"        //证书路径
    SSLCertificateKeyFile "conf/ssl.key/www.cj1029.com.key"        //  密钥路径

现在我们可以使用https协议在浏览器里面打开我们的网站,看看能否能打开。当然,现在我们打开http的网站还是存在的,就是说有一个http版本的地址和一个https版本。

所以我们需要把http定向到https上

编辑网站根目录下的 .htaccess文件

在文件末尾添加如下代码

RewriteEngine on    
RewriteCond %{SERVER_PORT} !^443$  
RewriteCond %{REQUEST_URI} !^/tz.php  
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R]  

3.3 将http重定向到https

如果你根据前面步骤进行配置,且成功的访问的话,那么恭喜你了,历经辛苦配置好了ssl证书。

然后这里得吐槽一下QQ浏览器,不依法显示绿色标志。

谷歌什么的都能显示绿色安全标~~

顺便在说一下,我之前看很多教程都是编辑httpd-ssl.conf 这个文件,但是我每次编辑保存以后,都无法重启apache。而且我不知道是哪里出了问题,不过后来研究了各种版本的教程以后,终于摸索出了上述步骤,而且终于成功了。真的是满脸的泪啊。

最后希望我的方法能够帮助到你,如果上述哪里有问题,欢迎大家指出,好让我即使改正。

陈健的个人博客,记录生活所见所感、学习笔记。专注于Web前端_SEO教程_读书心得。

2 条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注

返回主页看更多
狠狠的抽打博主 支付宝 扫一扫