阿里云轻量应用服务器安装 WordPress 之(03)安装 SSL 证书导致主题样式丢失问题解决篇

阿里云轻量应用服务器安装 WordPress 之(03)安装 SSL 证书导致主题样式丢失问题解决篇
2021年12月28日 21:24 什么值得买

作者:小公主的心情非常好

文章内容适合像我这样完全没有搭建 WordPress 经验且对“建站”一事一窍不通的人。本文突出的就是一个小白该怎么办,包含写作风格都是以还原当时的心路历程为主。当然,我也会在文末做个简洁版梳理一下。

通过阿里云轻量应用服务器可以一步到位安装好 WordPress 应用,但实际上真正的坑才刚开始。例如申请域名、添加证书、备案等等——遇坑无数…

惯例先来整理一下我在使用阿里云轻量应用服务器安装 WordPress 后遇到的关于 SSL 证书相关问题经过。

心路版

花了很多时间终于以免费的方式搞定了 SSL 证书,网站也用上了 HTTPS 加密访问,但当我兴冲冲打开自己的 WordPress 时,看到的是一片混乱。原本我精心挑选的主题完全显示不出来,网站变成了纯文字形式。

作为一个小白我第一反应是自己之前操作有问题,毫不犹豫还原了之前修改过的文件,改为 HTTP 访问后一切正常。重新操作了一遍改为 HTTPS 访问后问题依旧。然后我才明白不是我之前的操作错误…当然,这个时候直接选第三种网上搜啊!

可是我完全不知道这是个什么问题,也不知道搜索什么关键词,花费了不少时间。以我的理解,结论是 WordPress 中主题样式和图片链接包含了 http 地址,这个在 HTTPS 加密访问下无法显示,必须想办法修改。修改方式包括我完全听不懂也不知道在哪里的数据库相关操作。

好在对比了多个教程版本之后,整理了这样一个解决方案:

一、使用 WinSCP 访问服务器文件目录,一路直找 /data/wwwroot/wordpress/wp-includes/functions.php  文件进行编辑。

二、编辑 functions.php 文件:

找到代码:

require ABSPATH . WPINC . '/option.php';

在下面复制粘贴如下代码:

add_filter('script_loader_src', 'agnostic_script_loader_src', 20,2); 

function agnostic_script_loader_src($src, $handle) { 

    return preg_replace('/^(http|https):/', '', $src); 

add_filter('style_loader_src', 'agnostic_style_loader_src', 20,2); 

function agnostic_style_loader_src($src, $handle) { 

    return preg_replace('/^(http|https):/', '', $src);

}

最终效果是这样:

点击左上角保存按钮即可。

三、使用 WinSCP 访问服务器文件目录,一路直找 /data/wwwroot/wordpress/wp-config.php 文件进行编辑。

四、编辑 wp-config.php 文件:

找到代码:

*

* @package WordPress

*/

在下面复制粘贴如下代码:

$_SERVER['HTTPS'] = 'on';

define('FORCE_SSL_LOGIN', true);

define('FORCE_SSL_ADMIN', true);

最终效果是这样:

点击左上角保存按钮即可。

五、进入轻量应用服务器后台重启一下服务器让上面的修改生效,然后进入 WordPress 后台,在设置① - 常规里修改 WordPress地址(URL)②和站点地址(URL)③为 https://你的域名(原始应该是 http://你的域名或 IP 地址)。

附1:别忘了把你的域名加上。不要像图中只写了个 https:// 就以为完事了…正确的形式应该是类似 https://example.com 这样的。写错了保存就是大坑了…

附2:如果你只看这篇文章,我担心你忘记了域名解析的问题,请注意这是第三篇文章,前面还有两篇。如果真是我这样的小白,请从头看完再进行操作。

六、保存更改,然后进入轻量应用服务器后台重启服务器即可。

如果此时进入 WordPress 还是没有显示主题样式或图片,可以先临时切换一个其它主题再换回来。

简洁版

定位到 /wp-includes/functions.php 文件;添加一段代码,解决主题样式丢失问题(图文详情和代码你还是要看前面心路篇)。

定位到 /wp-config.php 文件;添加一段代码,解决后台登录问题(图文详情和代码你还是要看前面心路篇)。

进入 WordPress 后台,在设置 - 常规里修改 WordPress地址(URL)站点地址(URL)为 https://你的域名(原始应该是 http://你的域名或 IP 地址)。

一些备注

网上很多教程中提到安装 really-simple-ssl 插件到 WordPress 中可以更完美解决。但我作为小白只会安装却搞不清楚这个插件怎么使用,并且我实际没有使用这个插件,却依然可以解决目前所遇到的问题。所以等有需要的时候再研究一下好了,到时候会更新。

财经自媒体联盟更多自媒体作者

新浪首页 语音播报 相关新闻 返回顶部