Wordpressでトップページ以外が表示されない
WordPressを、wpフォルダ以下をドメイン直下に見せる様にインストールした場合、トップページ以外が表示されない事があります。
つまり、トップページだけが表示され、トップページ以外が404エラーとなってしまう現象です。
この問題の解決策を説明します。
この問題は、Wordpressが生成する「.htaccess」の中身が適切でないために起こるものです。
解決策としては、ドメイン直下(=wpフォルダの1つ上の階層)の「.htaccess」について、↓この様にして下さい。
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ ./index.php [L]
# END WordPress
これで、トップページ以外も正しく表示されます。
ポイントは↓この2行です。
RewriteBase /
RewriteRule ^.*$ ./index.php [L]
正規表現で、index.phpに転送すべきURLを指定し直しました。
それでもトップページ以外が正しく表示されない場合は、「.htaccess」そのものが機能していないことがあります。
「/etc/httpd/conf/httpd.conf」の下記の部分を参照してみて下さい。
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
そして、上から3行目を下記の通りに編集します。
編集前: AllowOverride None
編集後: AllowOverride All
これにより、「.htaccess」そのものが機能します。
共用サーバーではデフォルトで「.htaccess」が利用できる場合が殆どですが、VPSを利用している場合には注意が必要です。

