この記事は3年以上前に書かれた記事で内容が古い可能性があります
WordPress.comからWordPress on AWSへのお引越し
※20201001追記:次に引越しした記事も参照ください
PHPが古くなったのでWordPressの移行をする(1)〜AWSインスタンス作成とBackupのImport〜
wordpress.comではjavascriptが動かせないことがなかなかのストレスだったため、ドメイン購入してAWSにお引越しした。
EC2インスタンス構築
移行先Wordpressが載っているインスタンスを作成する
AWS consoleから、「インスタンス」>「インスタンスの作成」をクリック。
Marketplaceにwordpressで調べたらドンピシャのものがあったので、一番上の「WordPress Certified by Bitnami」を選択する。
色々と価格のことが出てくるが、ビビらずに「Continue」。
もちろん無料のインスタンスタイプ「t2.micro」を選択すして、作成。
公式サイトでは、「キーペアなしで実行」と書いてあるが、個人的にログインはしたいので、「既存のキーペアを選択」。
キーペアが無ければ、「EC2」>「ネットワーク&セキュリティ」>「キーペア」>「キーペアの作成」から作成しておく。
しばらくするとインスタンスが立ち上がってくる。「インスタンスのステータス」が「running」になればOK。
自分はいくつかインスタンスがあるので、識別のために名前を「wordpress」とつけておく。
あと、「プライベートIP」のアドレスを確認しておく。
ElasticIP設定
再起動すると、インスタンスのIPは変わってしまう。DNS登録することを考えてElasticIPでIPを固定する。
「ElasticIP」>「新しいアドレスの割り当て」より、ElasticIPを作成する。(詳細キャプチャはし損ねたのでよしなに。)
できたElasticIPのラジオボタンを選択し、「アクション」>「アドレスの関連付け」をクリック。
先ほど作成したインスタンスと、プライベートIPを選択し、関連付ける。
そうすると、先ほどのEC2のインスタンスの「ElasticIP」の値に関連付けたIPの値が入るようになる。
ElasticIPにブラウザアクセスすると、Wordpressの初期画面(Hello World)が見える。
ログイン確認
GUIログイン
「http://
ユーザー名とパスワードを調べる。
AWS consoleの画面へ戻り、EC2画面で作成したインスタンスのラジオボタンを選択する。
「アクション」>「インスタンスの設定」>「システムろぐの取得」を選択。
ログ画面が現れるので、下にスクロール。アスタリスクに囲まれた部分に、ユーザー名とパスワードが書かれているので記録する。
先ほどのWordpressのログイン画面に、取得したユーザー名とパスワードを入力すれば、管理画面へログインができる。
CLIログイン
不要かもしれないが、念のためCLIログインんができることも確認しておく。
% chmod 400 wordpress_admin.pem
% ssh -i wordpress_admin.pem bitnami@<ElasticIP> Welcome to Ubuntu 16.04.3 LTS (GNU/Linux 4.4.0-1050-aws x86_64) *** System restart required *** ___ _ _ _ | _ |_) |_ _ _ __ _ _ __ (_) | _ \ | _| ' \/ _` | ' \| | |___/_|\__|_|_|\__,_|_|_|_|_| *** Welcome to the Bitnami WordPress 4.9.4-2 *** *** Documentation: https://docs.bitnami.com/aws/apps/wordpress/ *** *** https://docs.bitnami.com/aws/ *** *** Bitnami Forums: https://community.bitnami.com/ *** To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. bitnami@ip-<ElasticIP>:~$
WordPress.comからWordpressへデータ移行
これはいつやっても良いのだが、このタイミングで実施。
WordPress.comの方からxmlファイルをエクスポート
「Tools」>「Import」>「Wordpress」からImporterを実行
Route53でドメイン購入
URLがIPでは心許ないので、思い切ってドメインAWSで購入する。※有料となります。
「Route53」>「Hosted zones」>「Create Hosted Zone」をクリック。
指示にしたがって、希望のドメインを購入すると、「Registered domains」に購入したドメインが現れる。(数分時間がかかります。)
Route53設定(ElasticIPとドメインの紐付け)
先ほど購入したドメインと、ElasticIPを紐付ける。
「Hosted zones」から、入手したドメインを選択すると、「Hosted Zone Details」が確認できる。
ドメイン名をダブルクリックすると、DNSレコードの画面に飛ぶので、「Create Record set」をクリック。
右側に「Create Record Set」の画面が現れるので、「Name」には「www」、「Type」は「A-IPv4 address」、「Value」にはElasticIPを入力し、「Create」をクリック。
レコードが追加される。
これで、晴れてWordpressに、ドメイン名でアクセスすることができるようになる。
(おまけ)Twitter連携
おまけで、WP to Twitterの設定。ポストを投稿すると、Twitterに自動で投稿されるようにする。
※事前にPluginで入れておく必要があります。
twitterから、API Key、API Secret、Access Token、Access Token Secretを取得。
WP to Twitterの方に入力して連携する。