阿里云虚拟主机开启https

2018年10月18日Web前端、Web后端

这几天折腾好了ecs上的https,再看我这显示不安全的博客,便想着能把个人博客也更新到https。

一、问题

大学注册的共享虚拟主机,一直用来放这个博客,再加上https的趋势,是时候给换https了。

由于虚拟主机只开放了80端口,没法像设置ecs那样开启443端口。但是可以通过cdn的方式开启cdn,原因的话,后面再补上。

二、申请ssl证书

前一篇博客中有申请的方式,这儿就不细说了。

三、cdn配置

首先,cdn流量是要money的。可以先买个100G的流量包,限时1年,要20大洋。

在cdn的域名管理里,点击添加域名。

接下来,填下要加速的域名,业务类型选择图片小文件就行了。源站类型保持IP,在IP中输入你的虚拟主机的IP地址。

端口的话一定要选择80端口,因为443是不开放的。

提交后,到域名管理界面,点击配置按钮,出现了一大列东西,往下翻,翻到HTTPS配置,点击第一个修改配置,

状态修改为开启,证书的话已经先申请了,可以直接选择阿里云证书。没申请的话,你也可以选择免费证书。

最后的强制跳转,一定要选择http->https,点击确定。

再次回到域名管理界面,点击CNAME进行复制。

再点击进入云解析DNS,选择对应的域名进行解析设置。点击添加纪录,

记录类型选择CNAME,主机记录填上www,解析线路选择默认,记录值的话,粘贴上刚才复制的CNAME的值,最后点击确认就行了。如果有冲突的话,直接去修改对应的记录就行了。

注:修改记录的话,不是立刻生效的,得过十几分钟。

四、测试

打开powershell或cmd,ping自己的域名。

实际已经显示了对应的CNAME,且IP也发生了变化,这样就配置成功了。

然后,访问博客,发现chrome仍旧是提示不安全,进入页面后,发现网站的css都没有加载上,后台还居然登录不了。看了控制台,提示大概是我们在https的网站中还有http的请求吧。

五、修改wordpress配置

先修改wp-config.php文件,用ftp工具登录,查询到这个文件,代码中找到require_once(ABSPATH . 'wp-settings.php');这段代码,将下面这段复制到他的前面。

define('FORCE_SSL_ADMIN', true);
define('FORCE_SSL_LOGIN', true);
$_SERVER['HTTPS'] = 'ON';
define( 'CONCATENATE_SCRIPTS', false );

代码生效后,后台可以登录了,但是明显感觉变慢了。。。 登录后台后,找到setting->常规选项,修改wordpress地址和网站地址到https。

然后再刷新测试,确保所有的请求都有http改到了https。这样https就ok了。

最后,希望这流量不要用上瘾了。。