Alibaba Cloud

Alibaba CloudでWordPressを動かしてみる。Elastic Compute Service + Server Load Balancerで構成する。

はじめに

前回は一台のElastic Compute Serviceで構成しました。これだけでは直接サーバーへアクセスすることになります。
そこで、Server Load Balancerを設置し拡張します。そしてSSL化も行います。

構成は下記のようになります。

前回の確認

Elastic Compute Serviceを使ってWordpressを立ち上げるまでは下記を参考してください。
https://level69.net/archives/27903

Server Load Balancerの設定

Server Load Balancerを開きます。SLBの作成を開きます。

環境に合わせてリージョンを選択します。今回はECSがある日本を選択します。
インスタンス名を任意の名前を入力します。

スペックはトラフィックに合わせて選択します。
今回は全くないのでSmallを選択しています。
リソースグループを選択します。

内容確認して同意します。
ディスカウント効いてますね。たまにこういうディスカウントがあるのがAlibaba Cloud。

起動後は一覧に表示されます。
対象のSLBを開きます。

リスナーを追加します。

今回はSSL化も行うのでHTTPSを選択します。
ポートは443を入力します。

SSL証明書を設定します。
Alibaba Cloudでも証明書は発行できますが、無料のLet's Encryptを利用しています。

ちなみに著者は証明書発行にココをよく利用しています。
https://sslnow.ml/

Let's Encryptを利用するのでサードパーティの証明書のアップロードを選択します。
公開鍵証明書をコピペするかアップロードします。フルチェインの証明書をアップロードする必要があります。
秘密鍵もアップロードします。

アップロードが完了すると前画面に戻ってきます。

バックエンドサーバーを設定します。VServerグループを作成します。

追加を開き一覧から選択します。

ポートを入力します。バックエンドは80です。

追加後は一覧に表示されます。

ヘルスチェックはそのままです。

確認後、作成します。

完了です。

一覧に追加されます。

DNSは事前に設定しておきます。
https://level69.net/archives/27969

SLBのIPアドレスをレコードに設定します。

確認

httpsでアクセスしてみると表示が崩れます。

そこで先ず、直接httpでECSへアクセスし設定を開きます。

httpsにアドレスを変更します。

設定後は何も表示されずアクセスできなくなります。
気にしないでください。

次に、対象ECSにSSHで接続しwp-config.phpの設定を行います。
最後の行を下記のように変更します。

$_SERVER['HTTPS']='on';

/** Sets up WordPress vars and included files. */
require_once ABSPATH . 'wp-settings.php';

define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);

この設定を行わないと正しく表示されません。

再度確認し問題なく表示されることを確認します。

(上手くできなかった場合は直接DBを設定する必要があるので面倒です)

まとめ

Server Load Balancerを追加してWordpressをSSL化しました。
簡単にSSL化を行えるので利用すると良いと思います。
Wordpressに限らずSLBは頻繁に利用するので触っておくと良いでしょう。

-Alibaba Cloud
-,