AWSでのWordPressの利用で困ったことの対応策
概要
2月の下旬にAWSの無料枠を使ってEC2の利用を開始しました。EC2環境で、ドットインストールの「WordPress入門 」に従ってWordPressをインストールしてみたのですが、いくつか困った点があったので、忘備録として対応策を記載します。
dotinstall.com
WordPressのパーマリンク設定
「WordPress入門 」の「#04 WordPressの設定をしてみよう」において「パーマリンク設定」の話が出てきます。これは、記事のURL形式を設定するものです。しかし、EC2のデフォルト環境では、パーマリンクを設定すると、下記エラーが表示され、記事が表示されなくなってしまいました。
Not Found The requested URL /wordpress/2016/02/21/hello-world/ was not found on this server.
/etc/httpd/logsにあるログファイルを見たところ、どうやら、WordPressのインストールディレクトにある.htaccessが、apacheに無視され、apacheが/wordpress/2016/02/21/hello-world/というディレクトリを探しに行って、存在しないためにエラーとなるようです。
apacheには詳しくないですが、WebでApache関係のサイトを調べたところ、/etc/http/conf/http.confで、WordPressのインストールディレクトリを含む上位のディレクトリに対して”AllowOverride None”が指定されているのが原因のようです。(これが指定されると.htaccessが無視されます。安全な初期設定としてこうなっている模様。)
そこで、/etc/http/conf/http.confに、WordPressのインストールディレクトリ(当方の環境では/var/www/html/wordpressとしました)に対する追加設定をすることで、一応、問題が解決しました。
# # setting for /var/www/html/wordpress # <Directory "/var/www/html/wordpress"> AllowOverride All </Directory>
Apacheのことが分かっている人には当たり前のことかもしれませんが、初心者の当方にとっては隘路になったので、他の初心者の方でも役立つ可能性があるので、記載しておきます。