タイガーラック クリエイティブブログ
2026
September
03

tech.tiger-rack.co.jp(このブログ)をサーバー移転しました

はじめに

このブログ(tech.tiger-rack.co.jp)を、別のVPSへサーバー移転しました。
作業の大まかな流れと、その中で特にやってよかったと感じている「SSL証明書のコピー」について書きます。

移転の大まかな流れ

1. gitリポジトリの移設(旧サーバーのリポジトリを新サーバーへmirror転送)
2. DBの移設(旧サーバーでdump → 新サーバーでimport)
3. SSL証明書の移設(新規取得ではなく、旧サーバーの証明書ファイルをそのままコピー)
4. サイトの展開(新サーバー上にリポジトリを配置し、公開ディレクトリとして紐付け)
5. WordPress本体・プラグイン・アップロードファイルなど、git管理外ファイルの転送
6. Webサーバー設定を有効化(証明書は既にあるので、最初からhttps込みで設定できる)
7. DNSの切り替え
8. 表示確認(特に、テーマのビルド成果物であるCSS/JS/画像が崩れていないか)
9. 旧サーバー側の後片付け

特別なことはしておらず、「バックアップして新サーバーに持っていく」の積み重ねです。

特によかった話: 証明書は「新規取得」ではなく「コピー」する

SSL証明書というと、新しいサーバーに移ったらcertbotで取り直すものだと思われがちですが、今回は旧サーバーの証明書ファイル一式をそのまま新サーバーにコピーする方法を取りました。

理由はシンプルで、Let’s Encryptの証明書はただのファイルであり、発行・更新のタイミングでこそドメインの向き先が検証されますが、すでに発行済みの証明書を「使うだけ」なら、どのサーバーに置いても普通に動くからです。

# 旧サーバーで証明書一式をtarにまとめる
cd /etc/letsencrypt
sudo tar czf /tmp/letsencrypt-backup.tar.gz accounts archive live renewal

# 新サーバーへ転送して展開
sudo tar xzf letsencrypt-backup.tar.gz -C /etc/letsencrypt

所有者とパーミッションも調整します。
特に証明書本体(秘密鍵を含む`archive/`ディレクトリ)は、転送の過程でuid/gidがズレることもある(らしい)ため、rootのみが読み書きできる状態に揃えました。

sudo chown -R root:root accounts archive live renewal
sudo chmod -R go-rwx archive

これまでの移転では、DNSの向き先を新サーバーに切り替えて、それが浸透してからでないとcertbotで証明書を取得できず、浸透待ち+証明書取得待ちの間はhttpsが機能しないダウンタイムが発生していました。

証明書を事前にコピーしてきたことで、このダウンタイムが丸ごとなくなりました。

  • 新サーバー側は展開が終わった時点で、既にhttpsが機能する状態になっている
  • 移転直後の作業中でも、`–resolve`でホスト名解決を上書きすれば、DNS切り替え前からhttpsで本番同様の表示確認ができる
  • あとはDNSを切り替えるだけで、切替が反映された端末から即座に正しいhttpsで表示される
curl -Ik --resolve tech.tiger-rack.co.jp:443:<新サーバーのIP> https://tech.tiger-rack.co.jp/

まとめ

  • サーバー移転はリポジトリ・DB・証明書・git管理外ファイルの移設という、地味だが積み重ねの作業
  • SSL証明書は新規取得ではなく既存ファイルのコピーで持っていける。DNS切替のタイミングを証明書取得待ちから解放できるのでおすすめ

このカテゴリの最新記事

関連記事

SHOP LIST

タイガーラック株式会社

〒577-0056
大阪府東大阪市長堂1-3-14 TOKUYASU Bld.