手順はシンプルで、
- 画像を一旦ローカルにダウンロード
- AWS S3にバケット作ってアップロード、公開設定
- ドメインを置換
これだけで画像を表示出来るようになります。
- https://nplll.com/assets/2019/08/sick_rougan.png
→ https://nplll-static.s3-ap-northeast-1.amazonaws.com/assets/2019/08/sick_rougan.png
8/19以前に書かれた記事は、画像が置き換わっていますが特に問題なさそうですね。
歳を取ると人間は「劣化」していくんだなあとしみじみ思う – NOBODY:PLACE
以下、いくつか補足です。
ターミナルを使ってファイルを一括ダウンロード
scp -P ポート番号 -i ~/.ssh/id_rsa -r ippei@hoge.com:/web/www/public/assets ダウンロードするディレクトリ
これでサーバにSSH接続した上で任意の場所にファイルを一括ダウンロードできます。便利。
ドメインの置換はSQLクエリで
プログラムを用意するのは面倒だったので、SQLクエリで。クエリの例
UPDATE wp_1_posts
SET post_content=REPLACE(
post_content,
"https://nplll.com/assets_c/",
"https://sample.s3-ap-northeast-1.amazonaws.com/assets_c/"
);
これで本文中の画像のドメインが置き換わります。
(実行する際には必ずバックアップを取ってから行ってください。巻き戻せません)
ちなみにSQLで置換する場合正規表現が使えないので、正規表現を使って一括置換したいような場合には、プログラムを用意する必要があります。