The client and the challenge
The portfolio of architect Idis Turato has collected photos, drawings and videos of his work for years. Media sat on Cloudflare R2 through the same older plugin as Vizkultura, with the access key written into the plugin code, no AVIF and occasional upload errors. WordPress lives in the /blog subfolder, which makes any move more delicate.
The solution
First we replaced the old plugin with ours, in R2 mode, without changing any addresses. Then we did a trial move on one month of the archive, copied the whole library from R2 to a Backblaze B2 bucket in the EU and compared both sides. While preparing, we found 325 records in the content that pointed at addresses that did not exist even on R2, so we repaired those too. Old addresses lead to the new ones through a permanent 301 redirect, and the old bucket stays as the way back.
The result
The whole library is on B2 without a single difference, images and old links work, and new uploads get AVIF in every size with the local copy removed from the disk straight away.
