AWSでWordPressの始め方|ドメイン・SSL証明書・バックアップ編

IT

前回、AWSでWordPressブログを始める場合の基本編を書きました。

【料金明細あり】AWSでWordPressの始め方|ブログ運営はいくらかかる?

今回は、インスタンスを建てたあとに必須となる、
・ドメイン
・証明書(SSL)
・バックアップ

について書きます。

なお、この記事では、AWSのコンソール画面上の操作をひとつひとつ説明することはしていません。
ある程度のWeb知識を前提としています。
詳細はAWSのリンクを貼っていますので、そちらを参考にしてください。

** サーバ構築のご相談は、一番下をご覧ください。

EC2よりもLightsailの方が安くて簡単です、という記事はコチラ
AWSで手軽にブログ運営するならEC2よりLightsailの方がおすすめです

ドメイン→Route 53

↓この流れで行えば無事登録できると思います。

How to Register a Domain Name with Route 53
Looking for instructions on setting up a domain with AWS? Follow this easy guide to select, buy, and configure DNS with Amazon Route 53.

まず、公開ページにするために、静的IPアドレス(Elastic IP)が必要になります。

EC2コンソールのElastic IPから新しいアドレスの割り当てと、そのアドレスをインスタンスに関連付けます。
(インスタンスへの関連付けはインスタンスをシャットダウンして行います)

Linux インスタンス用ユーザーガイドーElastic IP アドレス

次にドメイン名を取得します。
AWSでのドメインとDNSの管理はRoute 53というサービスになります。

ドメイン名は.comや.jpなどの拡張子によって価格が違います。

投稿時点のRoute53のドメイン価格の例

.jpは$90〜となっていますが、お名前.comなど国内のドメイン管理会社から購入すれば、もっと安く手に入りそうです。
こだわりがある方は、ドメインは別会社から購入することもできます。

ぼくは請求が複数は面倒なので、Route53から最安値の.netを選択しました。

登録完了まで15分くらいかかります。

登録完了したら、先ほど取得した静的IPアドレスとドメインを紐付けるDNS登録を行います。

証明書(SSL)→Let’s Encrypt

証明書は Let’s Encrypt を使います。

Let's Encrypt - フリーな SSL/TLS 証明書
Let's Encryptは、非営利団体の Internet Security Research Group (ISRG) が提供する自動化されたフリーでオープンな認証局です。

今回紹介しているインスタンスはAMIでLet’s Encryptも同梱されているため、以下のコマンドを実行するだけで、サーバ証明書を発行できます。

sudo /opt/bitnami/letsencrypt/scripts/generate-certificate.sh -m [メールアドレス] -d [ドメイン名]

Let’s Encryptの有効期間は3ヶ月です。
3ヶ月を経過する前に更新する必要があります。

上のコマンドでcrontabに更新スクリプトが登録されて、
自動更新の仕組みまで整うはずですが、念の為確認してください。

確認方法と、ダメだった場合の再作成方法は↓の記事に書きました。

Let’s Encryptの自動更新失敗?対応方法は?

WordPressとnginxのhttps対応

証明書を取得したら、サイトのhttps化と、Webサーバであるnginxでhttpからhttpsへのリダイレクトを追加します。

WordPressの設定変更

WordPress管理画面の設定ー一般設定から変更可能であれば、
URLのプロトコル部分をhttpからhttpsに変更します。

画像のように変更できない状態であれば、サーバ上のファイルを直接編集します。

修正ファイル:
/opt/bitnami/apps/wordpress/htdocs/wp-config.php

編集行:

define('WP_SITEURL', 'https://' . $_SERVER['HTTP_HOST'] . '/');
define('WP_HOME', 'https://' . $_SERVER['HTTP_HOST'] . '/');

nginxの設定変更

以下のファイルに1行追加します。

修正ファイル:
/opt/bitnami/nginx/conf/bitnami/bitnami.conf

追加行:

    server {
        listen       80;
        server_name  localhost;

        #include "/opt/bitnami/nginx/conf/bitnami/phpfastcgi.conf";
        return 301 https://$server_name$request_uri;    #←この行を追加

        include "/opt/bitnami/nginx/conf/bitnami/bitnami-apps-prefix.conf";
    }

バックアップ→UpdraftPlus

bitnamiの公式ページでは、/opt/bitnamiディレクトリをまるごとバックアップすることを推奨されています。

Create And Restore Application Backups

このディレクトリは、現在、このサイトで2.5Gです。

この方法で取得してもコピー先をどうするか、という問題があるので、ぼくはWordPressのプラグインであるUpdraftPlusを使っています。

UpdraftPlus WordPress Backup Plugin
バックアップと復元を簡単に。手動または自動予約 (Dropbox、S3、Google ドライブ、Rackspace、FTP、SFTP、メール、その他) による完全なバックアップ。

無料プランで個人のオンラインストレージにコピーしてくれるし、設定もWordPressの管理画面から行えるので、安心で便利です。

オンラインストレージは、Google Drive、Dropboxなど主要なものをサポートしてくれています。

プラグイン、テーマ、アップロードした画像、db、その他ファイルがバックアップされます。


サーバまわりは以上です。
ここまでで基本的な部分は整うと思います。

S3、CloudFrontを使う場合の記事はコチラ
WordPressでAmazon S3、CloudFrontを使う方法

EC2よりもLightsailの方が安くて簡単です、という記事はコチラ
AWSで手軽にブログ運営するならEC2よりLightsailの方がおすすめです


もし、このブログを読んで、同じサーバを構築したいと思う人がいたら、
ツイッターアカウント に連絡ください。
格安でお受けいたしますので、よろしくお願いしますm(_ _)m