WordPress站点绑定的域名增加SSL证书的那些事!

By | 11月 19, 2017

1.一零这次使用的CA证书是在阿里云申请的免费证书,具体的申请过程就不一一赘述,申请完成后下载证书文件,一个压缩包包含两个文件分别为公钥和私钥。

2.第二步则是修改服务器的环境配置,本次配置的是nginx。首先在服务器中创建一个文件夹用于存储证书文件,然后修改nginx配置文件,将server位置信息作如下修改:

server {
        listen        443 ssl;                     #CA证书需要通过443端口
        ssl on;
        server_name onezero.cc www.onezero.cc;     #站点域名
        root /www/***;                             #个人的站点目录
        index  index.html index.php index.htm;
        ssl_certificate   /www/cert/**********.pem;              
        ssl_certificate_key  /www/cert/*******.key;           #证书私钥的位置。
        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;

}

3.完成第二步只是确保http和https共存,如果要求只能通过https访问,则需要配置80端口http强制跳转至https,在80端口的server处增加如下代码:

rewrite ^(.*)$ https://$host$1 permanent;

效果如图:

4.修改站点中的部分url,打开wordpress数据库的wp_options表,修改siteurl和home两个字段的内容为https:// www.yourdomain.com,具体效果如图所示:

5.这时候站点的页面可以正常访问,但是在登陆后台时可能会遇到下图问题,提示重定向的次数过多。

这时候首先修改config.php,在结尾处添加如下代码:

define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);

但是可能还是提示上述的错误,但是在url中再加上index.php即可正常访问网站后台,下面则需要直接对站点的代码进行修改,打开站点后台代码,默认为wp-login.php,找到第782行,在结尾处加上.’index.php’即可。

至此,可以实现wordpress全站增加https,如果遇到其他问题可以在下方留言!

发表评论

您的电子邮箱地址不会被公开。