之前介绍了如何申请阿里云的免费SSL证书,这篇文章将要介绍如何安装部署阿里云的免费SSL证书,如果目前还没有申请SSL证书的话,可以参看之前的文章《开启HTTPS访问:申请免费SSL证书》先申请免费的SSL证书。

1.证书申请完成之后,在“安全(云盾)”中的“CA证书服务(数据安全)”可以查看已经成功签发的证书,并点击证书后面的“下载”;

安装免费SSL证书

2.选择Web服务器对应的证书,我的网站使用的是Apache服务器,因此这里以Apache服务器证书为例,点击“下载证书for Apache”;

安装免费SSL证书

3.在对应web服务器证书的下载界面中,会有关于安装SSL的对应步骤,首先我们要在服务器的Apache目录中创建cert目录,将下载回来的4个证书文件全部上传到cert目录中;

安装免费SSL证书

特别提醒#1:Apache目录一般默认为/usr/local/apache
特别提醒#2:创建cert目录时,注意设置目录全新为755

4.使用SSH连接工具登陆阿里云服务器(我习惯使用身材只有300多KB的putty),找到Apache的配置文件httpd.conf;

安装免费SSL证书

特别提醒#1:SSH连接工具还有Xshell、SmarTTY、Cygwin等
特别提醒#2:httpd.conf一般默认在Apache目录/conf/httpd.conf

5.使用vi或vim编辑httpd.conf配置文件,找到

#LoadModule ssl_module modules/mod_ssl.so
#Include conf/extra/httpd-ssl.conf

将两句内容前面的“#”删除,改为

LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf

安装免费SSL证书
安装免费SSL证书

特别提醒#1:在非编辑模式下,使用“/关键词”可以查找相关内容
特别提醒#2:文本编辑命令为“i”,退出并保存命令为“:wq”
特别提醒#3:所有命令均在非编辑模式下进行

6.在Apache目录的配置文件目录中,找到ssl的配置文件httpd-ssl.conf,并用vi或vim编辑httpd-ssl.conf文件;

安装免费SSL证书

特别提醒#1:httpd-ssl.conf一般默认在Apache目录/conf/extra/httpd-ssl.conf

7.在httpd-ssl.conf文件中查找

SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
SSLHonorCipherOrder on
SSLCertificateFile cert/public.pem
SSLCertificateKeyFile cert/2*************8.key
SSLCertificateChainFile cert/chain.pem

将找到的信息修改为与阿里云证书提供的内容,前面如果有“#”要去掉“#”;
8.上述所有内容完成之后,重启Apache服务;

特别提醒#1:重启Apache服务命令“service httpd restart”
特别提醒#2:重启Apache如果报错,根据报错信息查询配置文件内容是否正确

9.如果配置SSL正确完成,却依然无法通过“HTTPS”访问网站,可以首先通过“配置规则”查看443端口是否已经开启;

安装免费SSL证书

如果在列表中没有看到433端口,可以选择“快速创建规则”,勾选“HTTPS(443)”选项,并在“授权对象”填写“0.0.0.0/0”允许所有IP地址及端口;

安装免费SSL证书

10.其次可以查看云服务器中是否存在多个网站,然后使用vi或vim编辑“Apache目录/conf/vhost/你的域名.conf”文件,在配置文件中增加以下内容:

<VirtualHost *:443>
    ServerAdmin 你的邮箱
    php_admin_value open_basedir /data/www/你的域名:/tmp:/var/tmp:/proc
    DocumentRoot /data/www/你的域名
    ServerName 你的域名
    ServerAlias 你的www域名 你的顶级域名
    SSLEngine on
    SSLCertificateFile cert/public.pem
    SSLCertificateKeyFile cert/2*************8.key
    <Directory /data/www/你的域名>
        SetOutputFilter DEFLATE
        Options FollowSymLinks
        AllowOverride All
        Order Deny,Allow
        Require all granted
        DirectoryIndex index.php index.html index.htm
    </Directory>
    ErrorLog  /data/wwwlog/你的域名/ssl_error.log
    CustomLog  /data/wwwlog/你的域名/ssl_access.log combined
</VirtualHost>

至此,阿里云的SSL免费证书就已经安装部署完毕,但对于网站的SEO来说,还有一个很重要的重定向问题需要解决,我将会在下一篇文章中详细介绍HTTPS的重定向问题。