AWS LightsailのWordPressインスタンスはBitnamiを用いて構築されていて少し癖があるので、初期構築時に編集しそうな箇所をメモとして残しておきます。
単語解説
- Bitnami ( https://bitnami.com/ )は、WordPressなどのWebサービスと、その動作に必要なphp,mysqlなどのミドルウエアのパッケージです。
- Amazon Lightsailは、AWSの月額制のサービスです。従量課金ではなく月額課金なので、レンタルサーバ的な使い方ができます。
初期設定の確認
Bitnami上のWordPressの初期ID/PWなどを調べる
# WordPress初期ユーザーのID/PWの出力
$ cat /home/bitnami/bitnami_credentials
php.iniの場所、エラーログの場所
# エラーログの場所
/opt/bitnami/apache2/logs/error_log
# php.iniの場所
/opt/bitnami/php/etc/php.ini
ドキュメントルート
# 静的なコンテンツ資材の格納場所
/opt/bitnami/wordpress
# wp-content配下の資材の格納場所
/bitnami/wordpress/
# wp-config.phpの実体の場所
/bitnami/wordpress/wp-config.php
設定変更
ベーシック認証の設定
# /opt/bitnami/apache2/conf/vhosts/wordpress-https-vhost.conf の編集
# None を Allに書き換える
<Directory "/opt/bitnami/wordpress">
AllowOverride None
...(略)
後は、/opt/bitnami/wordpress/.htaccess
と/opt/bitnami/wordpress/.htpasswd
を適宜編集すればOK
キャッシュシステム
BitnamiのApacheはデフォルトでキャッシュが有効になるようにチューニングされているので、開発時には切っておき、サービスインするときに再び有効化するのが良さそうです。
# /opt/bitnami/php/etc/php.ini の編集
## 1 を 0にするとOFFになる
opcache.enable = 0
# /opt/bitnami/apache2/conf/httpd.conf の編集
## 以下の2箇所をコメントアウトする
# Include conf/pagespeed.conf
# Include conf/pagespeed_libraries.conf
# /home/bitnami/stack/apache2/conf/pagespeed.conf (AWS 上の bitnamiのみ)
## on を off にする
ModPagespeed off
以上の設定を実施後、sudo /opt/bitnami/ctlscript.sh restart apache
でapacheを再起動することでキャッシュが無効になりました。
ApacheやDBの停止・再起動
公式ドキュメント | docs.bitnami.com に詳しく載っています。
# サーバのステータス確認
$ sudo /opt/bitnami/ctlscript.sh status
# サービスの停止・再起動
## 停止
$ sudo /opt/bitnami/ctlscript.sh stop
## 再起動
$ sudo /opt/bitnami/ctlscript.sh restart
## apacheだけ再起動するとき
$ sudo /opt/bitnami/ctlscript.sh restart apache
SSL証明書のインストール
BitnamiにはLet's Encrypt 証明書をインストールするための bncert-tool という独自の HTTPS 設定ツールがインストールされているのでこれを利用してSSL証明書をインストールします。
# 以下のコマンドを発行するとプロンプトが出てくる。
# 必要な情報を入力していけば、SSL証明書が発行され、自動で更新される。
$ sudo /opt/bitnami/bncert-tool
メール送信環境の構築
いくつか方法と手順がありますが、ここでは外部SMTPサービスを利用した送信方法について触れます。
25番ポート開放申請
Lightsailインスタンスからメールを送信するために、オフィシャルのドキュメント | aws.amazon.com に記載の説明に則って、25番ポートの開放申請を行います。2回くらい英文メールのやりとりがあり、最大で48時間程度かかります。
SMTPサーバーの設定
Bitnamiの中にはsendmailがインストールされていないので、ASPサービスなどを利用してメールを送信する必要があります。最もかんたんなのがsendiblueだったので、WP Mail SMTPの使い方:WordPressでSMTPの設定をする方法 | kohsukenemoto.com
などを参考に、sendinblueの設定を行いました。