2021/09/10
Microsoft のクラウドサービスAzureを利用しWordPressをインストールする方法をご紹介します。
Azureのサービス提供範囲は、仮想マシンからアプリケーションの提供まで幅広いですが、今回はより簡単により早くWordPressを構築することとAzureの機能を試すことを目的に、WebAppsという Web アプリケーションを構築してホストできるサービスを使います。アプリケーション部分の構築からスタートとなるために、仮想マシンの構築やOSのインストールといったインフラストラクチャの準備が不要なところがポイントです。
では早速ためした手順の紹介です。
Azureへログイン
Microsoft Azureのポータルサイトにアクセスし、ログインします。アカウントがない方は無料なので作成しましょう。
Webサイトを作る
ログイン後、画面右側の[+新規]>[Web+モバイル]>[See all]をクリックします。
今回の手順ではWindows版をインストールします。そのため[WordPress on Linux]がでてきますがこれは選択せずに、[さらに表示]をクリックします。というのは、Linux版ではデータベースの設定が必要ですが、Windows版ではデータベースプロバイダーの設定にて、[MySQLInApp]という、簡単に設定できるサービスがあるためWindows版を選択することにします。
グレーの色の[WordPress]アイコンを選択し、[作成]をクリックします。こちらがWindows版WordPressです。
サイトの作成に必要な項目を入力し、作成をクリックします。これでWordPressのアプリケーションがインストールされます。
- アプリ名:ここで入力した値がURLになります。例:〇△□×と入力した場合のURLは、http://〇△□×.azurewebsites.netとなります。
- リソースグループ:新規に作成します。
- データベースプロバイダー:「MySQLInApp」を選択します。※注釈に運用環境での使用を意図したものではありません。とありますが今回は確認が目的なので良しとします。
- プラン場所:地理的に近い場所を選択し、無料プランであるF1を選択します。
インストールが完了すると、[すべてのリソース]でインストールしたWebAppのサイトの概要が確認できます。
WordPressの設定
構築したURLにアクセスするとWordPressの設定画面が表示されます。日本語を選択し、続けるをクリックします。
必要な項目を入力しインストールをクリックします。
- サイトのタイトル:トップページに表示されます。
- ユーザー名:管理画面にログインするユーザー名です。
- メールアドレス:あらかじめ準備しておきましょう。
AzureのWebAppsにホスティングされたWordPressのページが表示されるようになりました。
WebAppsのサービスを停止すると、下記のようになります。検証途中で確認するときだけ動かしたいときに、使うといいかもしれません。
MySQLへの接続設定をすることなく、インストールが完了してしまったので、どのような設定になっているのか確認してみました。通常のインストール方法だと、DBへの接続情報を書き込む”wp-config.php”。接続情報部分は以下のようなコードでした。$_SERVER(サーバー変数)から、DBホスト名、DB名、DBユーザー名、DBパスワードを取得し、各変数に格納しているんですね。
//Using environment variables for DB connection information
$connectstr_dbhost = '';
$connectstr_dbname = '';
$connectstr_dbusername = '';
$connectstr_dbpassword = '';
foreach ($_SERVER as $key => $value) {
if (strpos($key, "MYSQLCONNSTR_") !== 0) {
continue;
}
$connectstr_dbhost = preg_replace("/^.*Data Source=(.+?);.*$/", "\\1", $value);
$connectstr_dbname = preg_replace("/^.*Database=(.+?);.*$/", "\\1", $value);
$connectstr_dbusername = preg_replace("/^.*User Id=(.+?);.*$/", "\\1", $value);
$connectstr_dbpassword = preg_replace("/^.*Password=(.+?)$/", "\\1", $value);
}
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', $connectstr_dbname);
/** MySQL database username */
define('DB_USER', $connectstr_dbusername);
/** MySQL database password */
define('DB_PASSWORD', $connectstr_dbpassword);
/** MySQL hostname */
define('DB_HOST', $connectstr_dbhost);
/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8');
/** The Database Collate type. Don't change this if in doubt. */
define('DB_COLLATE', '');
まとめ
オンプレのサーバでWordPressを構築しようとすると、ハードウェアの調達、OSインストール、Webサーバ、PHP、データベース・・・ととにかく時間がかかりますし、それ相応のスキルが必要です。また、レンタルサーバでは、データベースの利用できる数に制約があったりします。この仕組みを用いれば、小一時間あれば構築できますし、間違って設定してしまっても、App毎に削除したり作り直しができるので、試しに使うにはちょうどよいです。