前言
因为一开始对域名需求不大,就只有一个博客,所以使用Halo的时候我就直接把外部访问地址配置为了“https://域名.com” 。后来随着自己搭建了NAS,家里的应用也逐渐多了起来,所以想起把Halo的外部访问地址改为“https://www.域名.com”, 更改完配置以后发现文章里插入的那些自己手动上传的图片竟然都无法访问了,打开浏览器F12后发现,那些图片的地址还是“https://域名.com” 的形式没有变。但是查了查没有人遇到过这个问题或者解决方式对该版本不适用,所以留下一个解决办法。哦,对了我的halo版本是2.7。
解决方法
解决方法其实很简单,我当时是使用了docker-compose的方式配置的,配置文件里面包含了两个容器:halo和mysql,接下是修改的步骤:
# 查看mysql容器的CONTAINER ID
sudo docker ps
# 进入mysql容器(下一行命令的双引号不要留)
sudo docker exec -it “你的CONTAINER ID” bash
# 连接数据库,这里的数据库密码就是docker-compose.yaml里面配置的
mysql -uroot -p数据库密码
# 将halo数据库设为当前操作数据库
use halo;
# 替换掉旧域名
UPDATE `extensions` SET `data` = REPLACE(`data`,'旧域名','新域名') WHERE `data` LIKE "%旧域名%";