怎么样把 wordpress 的图片存储迁移到 Cloudflare R2

因为网站上有大量的视频,虽然在hetznert租的机器存储和带宽都够用,但是我认为这些视频和图片没必要放到自己的主机上,直接放到云存储里面最优,我基本上用了 cloudflare 的全家桶,干脆把云存储 R2 也给用上了,但最主要的问题是怎么样迁移,因为有几万张图片在 hetznert 的机器上。

迁移准备

  1. 首先要在 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

发表评论