欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

阿里云服务器Centos上Apache安装SSL证书配置Https

程序员文章站 2022-07-02 18:46:27
小编最近想学习一下小程序的开发,然后发现小程序的开发需要域名为Https协议,所以就特地去配置了一下,配置成功了就放出来和大家一起分享 ......

首先我们先去阿里云申请一个免费的ssl证书(https://common-buy.aliyun.com/?spm=5176.7968328.1266638..5e971232bzmsp5&commoditycode=cas#/buy)如下图:

阿里云服务器Centos上Apache安装SSL证书配置Https

申请通过之后,签发了证书,我们就去控制台下载,下载apache版本的证书就好了

阿里云服务器Centos上Apache安装SSL证书配置Https

然后在服务器的httpd目录下面新建一个cert的文件夹,把下载好的证书通过ftp放到该文件夹下面:

阿里云服务器Centos上Apache安装SSL证书配置Https

然后确保服务器安装了openssl和openssl-devel,httpd-devel,没有安装的话用yum安装一下就好了

yum install openssl;
yum install openssl-devel;
yum install httpd-devel;

然后去配置apache的配置文件httpd.conf

loadmodule ssl_module modules/mod_ssl.so   #去掉前面的注释,没有的话就自己加上去加载ssl模块,去modules文件夹下面能找到mod_ssl.so文件,如果没有那就是mod_ssl模块没有安装正确
include conf/extra/httpd-ssl.conf   #去掉注释,没有这个文件的话就去conf.d下面找ssl.conf是一样的导入进来就好了,自行把路径替换一下,没有的话自己建一个
#在文件尾加入下面的配置,可以让http重定向httpds
rewriteengine on
rewritecond %{server_port} !^443$
rewriterule ^/?(.*)$ https://%{server_name}/$1 [l,r]

然后去配置ssl.conf(httpd-ssl.conf)

sslengine on
sslprotocol all -sslv2 -sslv3
sslciphersuite all:!adh:!export:!sslv2:rc4+rsa:+high:+medium:+low:!rc4:
sslhonorcipherorder on 
#在页面底部配置virtualhost如下,如果有多个证书可以配置多个virtualhost
<virtualhost *:443>
	 documentroot "项目地址绝对路径"
	 servername https://域名
	 serveralias https://域名
	 sslengine on
	 sslprotocol all -sslv2 -sslv3
	 sslciphersuite all:!adh:!export:!sslv2:rc4+rsa:+high:+medium:+low:!rc4:
	 sslcertificatefile 证书公钥文件绝对路径
	 sslcertificatekeyfile 证书私钥文件绝对路径
	 sslcertificatechainfile 证书链绝对路径
	  
	 <directory "项目绝对路径">
	 options followsymlinks execcgi
	 allowoverride all
	 order allow,deny
	 allow from all
	 require all granted
	 </directory>
</virtualhost> 

 记得在httpd.conf里面也配置一个同项目的virtualhost

做完上面这些步骤记得要开放https默认的443端口,然后重启apache服务器就完成https的配置了

service httpd restart