はじめに
今回、「ゼロからわかるAmazonWebServices入門」という書籍でAWSを学習しているものです。
こちらの書籍の第4章でエラーに遭遇し、多くの時間を浪費してしまったので備忘録として記します。
同じようなエラーに悩んでいらっしゃる方の一助となれれば幸いです。
ブラウザからパブリックIPにアクセスすると500エラーになった
書籍の手順通り、デフォルトのVPC、サブネットにEC2インスタンスを作成、起動させ、そこへsshでログイン後、Apache、PHP、MARIADB、WordPressをインストールし終えたところでブラウザからパブリックIDを仕様してサーバーにアクセスすると、500エラーが表示されました。
原因と対処法
私の場合、インストールしたPHPとWordPressのバージョンが合わず、エラーを引き起こしていました。
そこでいったんインストールしたWordPressを削除してから、古いバージョンのものをバージョン指定してインストールする事で解決しました。
1、インストール、展開したWordPressを削除
$ rm -rf *
$ rm -rf *
2、古いバージョンのWordPressをインストール(私の場合は5.0.7)
$ wget https://wordpress.org/wordpress-5.0.7.tar.gz
3、インストールした古いバージョンのWordPressを展開
$ tar wordpress-5.0.7.tar.gz
4、古いバージョンのWordPressをAppacheに移動
$ mv wordpress/* /var/www/html
500エラーとは何か
様々なステータスコードがある中で、500エラーは内部サーバーエラーと呼ばれるらしいです。
要するに、ソースコードや、プログラム自体に問題があるよ!という意味のエラーだと解釈しています。
今回のエラーに関しては、プログラム同士が互換性がなくエラーになっていたので、納得です。
おわりに
このエラーに関しては、問題があることを知らせてくれるのみで具体的に何が悪いのかが分からず、半日ほど使ってしまいました。
Apacheを疑ってみたり、データベースを疑ってみたりと四苦八苦しました...。
WordPressをインストールし直す試みの途中で、いったんWordPressをアンインストールしたところ正常なapacheの画面が表示されたので、問題はWordPressにあるだろうというところまで来るものの、さらに時間を浪費するばかり...。
最終的には、書籍に記された
http://IPアドレス/wp-admin/install.php
ではなく、
http://IPアドレス/wp-admin/serup-config.php
にアクセスしてみたところ、「PHPとWordPressのバージョンに互換性がないよ」とエラーが表示されたので、なんとか解決。
まだまだ勉強することがたくさんありますね。