首先感谢Halo博客的开发作者做出这么好的开源博客系统,让如此咸鱼且懒得我也能够搭建一个自己的博客系统来记录生活的琐事。虽然之前一直都是用的WordPress,但是后面偶然听到这个项目的时候还是眼睛一亮。觉得它完全满足我的需求了,而且配置也超级简单(相关的安装配置官网都有说明,我这里就不过多介绍了。顺便说下我用的是docker方式安装的,然后数据库用的mysql,听说默认的H2会更好响应更快。)。

1.修改NGINX的server name

  既然要修改博客的域名地址,在配置了cname解析之后。下一步需要修改的就是server name。首先将原有的域名更换为现在的域名suk1da。这时候访问博客会发现还是能够访问,但是网站的变得非常不规整。然后我们进行下一步。

2.后台更换Halo博客的主页地址

  在更换主页地址之前,我们需要重启一下halo的docker容器。不然用新的地址登录后台后会没有反应。然后进入后台之后,将主页修改为现在的域名suk1da。(记得前面一定要加http或者https,不然识别会有问题。)

3.修改数据库的域名地址

  修改完域名地址后我们再次访问主页会发现,虽然有显示。但是所有的文章链接点进去还全都是之前域名的地址。这是因为数据库的地址还是之前的,。所以我们这一步需要做的就是通过update的方式修改数据库域名地址(修改之前记得养成备份的好习惯,如果用的是MySQL的话。)通过命令输入一下SQL语句。

  UPDATE OPTIONS SET OPTION_VALUE  = replace(OPTION_VALUE , '旧域名','www.suk1da.com') ;
  UPDATE COMMENTS SET AUTHOR_URL  = replace(AUTHOR_URL , '旧域名','www.suk1da.com') ;
  UPDATE PHOTOS SET THUMBNAIL  = replace(THUMBNAIL , '旧域名','www.suk1da.com') ;
  UPDATE PHOTOS SET URL  = replace(URL , '旧域名','www.suk1da.com') ;
  UPDATE POSTS SET FORMAT_CONTENT  = replace(FORMAT_CONTENT , '旧域名','www.suk1da.com') ;
  UPDATE POSTS SET ORIGINAL_CONTENT = replace(ORIGINAL_CONTENT , '旧域名','www.suk1da.com') ;
  UPDATE POSTS SET THUMBNAIL = replace(THUMBNAIL, '旧域名','www.suk1da.com') ;
  UPDATE THEME_SETTINGS SET SETTING_VALUE = replace(SETTING_VALUE, '旧域名','www.suk1da.com') ;

  至此域名的更换操作已经完成,刷新网站已经可以正常显示历史内容了。

4.H2数据库修改方式

  如果博客用的是Halo系统自带的h2数据库的话,可以通过以下步骤完成。

  1. 登录到服务器,使用 vim 打开配置文件:

  2. vim ~/.halo/application.yaml
  修改内容如下:
  h2:
  console:
  settings:
  web-allow-others: true
  path: /h2-console
  enabled: true
  也就是将 web-allow-others 和 enabled 字段改为 true。

  3. 改完之后重启 Halo。

  4. 接着访问 ip:端口/h2-console 即可登录到控制台,执行上面的SQL语句即可。
  默认的 url 为: jdbc:h2:file:~/.halo/db/halo,用户名和密码在你的 application.yaml 里面有。

参考链接

  解决更换域名后部分资源无法显示的问题。