因为网站上有大量的视频,虽然在hetznert租的机器存储和带宽都够用,但是我认为这些视频和图片没必要放到自己的主机上,直接放到云存储里面最优,我基本上用了 cloudflare 的全家桶,干脆把云存储 R2 也给用上了,但最主要的问题是怎么样迁移,因为有几万张图片在 hetznert 的机器上。
迁移准备
- 首先要在 R2 上面开通账户,绑定银行卡,建好 bucket,申请 access key/secret 之类,这个简单,文章多。
rclone 入桶
用 rclone 把现有的图片copy 到 R2 的桶里,这个过程 copy 了一整个晚上才完成,可能是从欧洲到亚太走的是公网。
备份
备份数据库和整个网站。
更改数据库
UPDATE wp_options SET option_value = 'https://media.xxxxx.com' WHERE option_name = 'upload_url_path' LIMIT 1;
把网站的libraray 域名更新,默认是 wordpress 主域名,迁移到了 R2 ,肯定是要用单独域名。
安装better-search-replace
这个插件能帮你直接把默认的连接替换到 R2 的连接。
把 https://www.xxxxx.com/wp-content/uploads/ 替换为 https://media.xxxxx.com/
我认为这种方式是最快最简单的迁移方式,如果你还不放心,要以在 nginx 上做一个 rewrite 之类的。
https://www.webnots.com/move-wordpress-images-folder-to-subdomain