Apache配置阿里云的免费SSL证书
Jump to navigation
Jump to search
简价
VPS上多网站时针对其中的某个网站部署阿里云的免费证书,记录一下启用的过程;
下载免费证书
阿里云免费证书的下载请百度!
下载之后会得到4个文件;
214933322080441.key 214933322080441.pem chain.pem public.pem
前面两个文件的文件名可能会有不同;
上传证书
apache目录下建议目录来保存4个证书文件
cd /usr/local/apache mkdir cert cd cert //建议xx.net这个目录是为了区分多个网站需要的HTTS的证书;仅此而已; mkdir xx.net 将上面下载到的4个证书文件放在这里。这样证书文件目录就在 /usr/local/apache/cert/xx.net下了;
修改httpd.conf文件;
#LoadModule ssl_module modules/mod_ssl.so (如果找不到请确认是否编译过 openssl 插件) #Include conf/extra/httpd-ssl.conf
PS:conf/extra/httpd-ssl.conf 这个文件其实不需要修改,阿里云上的资料是错误的,因为我们的VPS上部署了多个网站;
配置网站对应的虚拟主机配置文件
该配置文件的扩展名为.conf, 一般在vhost目录,以网站域名来命名该文件是最好的。举例如下:
保留原来的 <VitualHost *:80>这个部分,(是为了可以继续使用http协议来访问网站); 在该文件中增加下面的部分:<VitualHost *:433> <VirtualHost *:443> ServerName xx.net ServerAlias www.xx.net DocumentRoot "/data/www/xx.net" <Directory "/data/www/xx.net/"> Options +Indexes +Includes +FollowSymLinks +MultiViews AllowOverride All Require all granted DirectoryIndex index.php index.html index.htm </Directory> SSLEngine on SSLProtocol all -SSLv2 -SSLv3 SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM SSLHonorCipherOrder on SSLCertificateFile cert/xx.net/public.pem SSLCertificateKeyFile cert/xx.net/214933322080441.key SSLCertificateChainFile cert/xx.net/chain.pem ErrorLog /data/wwwlog/xx.net/error.log CustomLog /data/wwwlog/xx.net/access.log combined </VirtualHost>
然后重新apache 就可以了。
service httpd restart
FAQ
Q: 您与此网站之间建议的连接并非完全安全?
A: 配置阿里云的免费证书后之后,有时会出现‘您与此网站之间建议的连接并非完全安全’,这个问题是由于页面中加载了http资源,比如引用了其它http的资源或者是图片造成的,去掉以后就正常了。