centos7 apache 配置ssl

Posted 莫使有涯随无涯

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos7 apache 配置ssl相关的知识,希望对你有一定的参考价值。

        因为小程序后台服务器需要是https的,所以这两天赶紧百度了一波什么是https以及怎么将服务器升级为https.虽然网上教程很多但因具体环境可能有差异导致一路遇坑,摸爬滚打了两天终于弄好了。遂记下一路填坑过程以防下次跌坑。

1、环境

腾讯云服务器,为图省事装的一个叫“康展云计算”提供的全能环境:centos7.0  apache2.X

 

2、具体步骤

升级为https需要有ssl证书,网上有很多申请的教程有付费的也有免费,还有说用自签名证书的(好像类似自己给自己签发证书,可以用于测试什么的)。跟着那些教程弄了半天还是没头绪。后来发现腾讯云本来就提供有免费申请ssl证书的,而且还提供了配置证书的教程。

既如此果断舍弃网上杂乱的教程,在腾讯云申请证书。但是有一点这里申请的证书只能一个证书一个域名(无论是一级域名还是二级域名),当然你可以多申请几个域名证书。在网上有看到说可以申请泛域名证书的,一级域名申请之后余下二级域名就都可以用了,以后有时间在慢慢折腾了解吧。

 

在腾讯云申请证书

这个通用名称既是你要开通https的域名名称

申请成功后

下载证书得到如下的文件

根据服务器选择里面的证书文件,然后就是按照腾讯给出的操作指导将证书配置到服务器

因为要编辑httpd-ssl.conf文件,在命令窗口操作很不习惯,所以字节用ftp吧文件下下来编辑完了在传上去覆盖旧文件。

按照教程在apache个目录下找到httpd-ssl.conf文件,可能是因为我用全能环境安装的原因我的apache文件夹叫apache2,但是这也不影响其他继续操作吧。

我打开的文件是这个样子的

那个“ _default_:443”就不管了。

 配置DocumentRoot 为你域名访问的路径

ServerName 为你的域名,要跟你申请证书时填的一样
SSLCertificateFile /usr/local/apache/conf/2_www.domain.com_cert.crt
SSLCertificateKeyFile /usr/local/apache/conf/3_www.domain.com.key
SSLCertificateChainFile /usr/local/apache/conf/1_root_bundle.crt
这三个就是证书路径也就是之前下载下来的证书,你要先把他传到服务器上然后这里来配置他的路径


ok,这样配置完后重启一下apache

就可以用https访问你配置的域名了,访问其他域名还是不行的


然而却出现了一个问题能访问html文件却不能解析php文件,网上搜了好多资料只有一位同仁提到说




可是他却没给解决方案。。。。


后来我参照httpd.conf配置文件里的配置将
ProxyPassMatch ^/(.*\\.php)$ fcgi://127.0.0.1:10000/yjdata/www/www/$1
DirectoryIndex index.html index.php
这两行粘过来放到<VirtualHost _default_:443>标签里
重启apache后发现还是不能解析php文件。。。。

再后来我发现<VirtualHost _default_:443>标签里好像有两个节点有问题
就是这两:

既然前面已经配置解释器,所以果断把这两个节点注释掉,

重启apache :  service httpd restart

 

然后就ok!


 




 

以上是关于centos7 apache 配置ssl的主要内容,如果未能解决你的问题,请参考以下文章

centos7 php开发环境安装--配置SSL(Apache为例)

Apache 使用ssl模块配置HTTPS(Centos7 httpd2.4.6)

Centos7+Apache实现HTTPS

在腾讯云服务器centos7.5系统中lamp(centos7.5+apache+mysql+php)环境中安装ssl证书

ubuntu怎么开启 https服务

使用 Apache HttpComponents 使用 Webflux Webclient 配置 SSL