前两天给朋友的一个网站做HTTPS认证,突然发现阿里云虚拟主机官方并不支持https,主要原因是虚拟主机不开放443端口,所以无法直接部署SSL。虽然阿里云虚拟主机很坑,但是网上看到有教程说可以利用阿里云cdn实现,于是就开始倒腾,不过发现被百度给坑了,排名靠前的几个网站的教程都是从一个小网站转载过来的,然后还不完整,所以一直没成功反而浪费了很多时间。

wordpress设置https

最后终于找到了原文,不过虽然很完整但是可能因为是两年前的文章所以很多东西已经改变了,比如阿里云cdn服务后台设置等等。废话不多说,直接上阿里云虚拟主机上wordpress程序部署https的操作步骤:

第一步:申请CA证书服务

网站需要开启HTTPS肯定是要申请证书的,我申请的是阿里云云盾证书服务中免费型DV SSL数字证书,一个阿云帐户最多签发20张免费https证书

第二步:购买阿里云CDN服务

阿里云虚拟主机目前是不支持https的,这个我之前有提交工单咨询了客服,所以是毋庸置疑的。不过我们可以通过阿里云的cdn服务来跳转一下实现部署https,这个其实和百度云加速中付费版支持https的cdn效果是一样的。

阿里云CDN服务可以选择CDN流量包(国内版)和HTTPS请求包这两个其中一个,因为我要部署的网站流量不大也不小,所以从性价比考虑我选择的是50元/年(1000万次请求数)的套餐。

第三步:CDN页面配置加速域名

在CDN页面增加需要加速的域名,这步操作很简单,按照提示选择,等待审核通过就可以了!

(1)业务类型:图片小文件

(2)原站类型:IP,后面填写下ip地址就行

(3)端口:80端口(一定只能选80,因为虚拟主机443端口不开放)

第四步:配置CDN的SSL,开启https加速

在CDN页面管理》配置,进入配置页面进行HTTPS设置,如果你也是和我一样在阿里云申请的免费证书只要直接选择就行,如果不是就选择自定义上传下就可以完成,不过要记得最后的跳转类型一定记得选HTTP→HTTPS

阿里云虚拟主机https

配置页面除了“过滤参数”和“协议跟随回源”不要开启,其它相关配置都可以开启,特别强调过滤参数”一定要关闭!!CDN的过滤参数没关掉的话会导致一直出错!

第五步:DNS解析记录修改

要启用CDN加速服务,需要将阿里云CDN分配给您的CNAME指向您的加速域名;添加或删除后,受解析影响大约10分钟左右可以看到状态更新。

第六步:修改wordpress配置文件和wordpress和站点URL

(1)修改wp-config.php文件

在wp-config.php文件中找到require_once(ABSPATH . 'wp-settings.php');这段代码,将下面代码直接复制到它前面:
define('FORCE_SSL_ADMIN', true);
define('FORCE_SSL_LOGIN', true);
$_SERVER['HTTPS'] = 'ON';
define( 'CONCATENATE_SCRIPTS', false );

(2)修改wordpress和站点URL有两个方法:

方法一:在wordpress后台控制面板,设置》常规,将wordpress地址(URL)和站点地址(URL)都将http格式换成https格式。

方法二:打开数据库表:wp_options,将option_name:siteurl,home两个记录的option_value都从原来的http改成https格式。

第七步:添加.htaccess文件

在网站的根目录上传一个.htaccess文件,代码如下:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

至此,就完成了wordpress网站在阿里云虚拟主机上的https部署:https://www.jdyxc.com ,不过我在部署的时候出现一些问题:

(1)出现500错误,网站打不开?

有朋友反馈自己原本就自动生成.htaccess了,增加了这个文件反而出现500错误,所以删除.htaccess文件就可以了!

(2)网站https首页可以访问,但admin及内页全部404不存在?

我之前出现这种情况是因为解析错误

(3)解析冲突?

不用新增www解析,只要将原来的A记录修改到加速地址就行。

(4)网页可以访问,布局乱了?

首先检查第六步代码添加是否正确,另外查看下元素,看看是不是图片及css等地址是不是都是https,如果不是需要将http改成https。

也许你也感兴趣:

作者:
该日志由 破折君 于2018年05月01日发表在Php研究分类下,
转载请注明: (亲测可用)阿里云虚拟主机怎么部署https(SSL)?
澳门巴黎人娱乐场: , ,
【上一篇】
【下一篇】

2 篇回应 (访客:2 篇, 博主:0 篇)

  1. 钟水洲 说道:

    五一快乐,混个脸熟

    #1楼