Sina App Engine(SAE)からDigitalOceanへWebサイトを移行する

Sina App EngineからDigitalOceanへWordPressサイトを移行する

このメモは、WordPressサイトをSina App Engine(SAE)からDigitalOceanのDropletへ移行したときの手順を記録したものです。

1. SAEドメインをリダイレクトする

SAEサイトのルートディレクトリにあるconfig.yamlを開き、handleの下に次のルールを追加します。

- rewrite: if(in_header["host"] ~ "^www.yovisun.me" && path ~ "^(.*)$") goto "http://www.yovisun.com$1 [L,QSA,R=301]"

これにより、旧SAEドメインへのリクエストが新しいドメインへ301永続リダイレクトされます。

2. 新しいドメインを購入または準備する

新しいドメインはWest.cnで購入しました。ドメインの準備ができたら、DNSレコードをDigitalOcean DropletのIPアドレスに向けます。

3. DigitalOcean Dropletを作成する

DigitalOceanで、ワンクリックWordPressイメージを使ってDropletを作成します。セットアップ時に、ログイン用のSSHキーを追加します。

まだSSHキーを持っていない場合は、ローカルで生成します。

ssh-keygen -t rsa -C "835570372@qq.com"

4. PuTTY用にOpenSSH秘密鍵を変換する

WindowsでPuTTYを使う場合は、PuTTYgenを使ってOpenSSH秘密鍵をPuTTYの.ppk形式に変換します。

  1. PuTTYgenを起動します。
  2. Conversions > Import keyをクリックします。
  3. id_rsaなど、OpenSSHで生成した秘密鍵を選択します。
  4. Save private keyをクリックし、id_rsa_putty.ppkのような名前で保存します。

5. PuTTYでDropletへログインする

PuTTYを開き、DropletのIPアドレスまたはドメイン名を入力します。次に秘密鍵を設定します。

  1. Connection > SSH > Authへ移動します。
  2. Browseをクリックし、.ppk秘密鍵ファイルを選択します。
  3. Sessionへ戻り、セッションを保存します。
  4. サーバーへ接続します。

初回ログイン時には、WordPressワンクリックイメージのセットアッププロンプトに従います。私の場合はデフォルト設定で問題なかったため、Enterキーを押して続行しました。

6. DNSを設定する

ドメインのDNSレコードをDropletのIPアドレスに設定します。ルートドメインとwwwサブドメインのAレコードなど、サイトに必要な対応レコードを作成します。

DNS変更後、ドメインがDropletに解決されることを確認します。

nslookup www.yovisun.com

または、次を実行します。

dig www.yovisun.com

7. WordPressを更新する

新しいWordPressダッシュボードにログインし、コンテンツをインポートする前にWordPress本体、テーマ、プラグインを更新します。これにより、移行中の互換性問題を減らせます。

8. XMLバックアップをインポートする

事前にエクスポートしておいたWordPressの.xmlバックアップファイルを使います。

  1. WordPressダッシュボードを開きます。
  2. Tools > Importへ移動します。
  3. WordPressを選択します。
  4. 必要であればインポーターをインストールします。
  5. .xmlファイルをアップロードし、インポートを実行します。
  6. インポートした投稿を正しいユーザーに割り当てます。
  7. 旧サイトのメディアURLにまだアクセスできるかどうかに応じて、添付ファイルをダウンロードしてインポートするかを選択します。

インポート後、移行完了と判断する前に、投稿、画像、パーマリンク、リダイレクトを確認します。

Leave a Reply