Wordpressでトップページ以外が表示されない
Wordpressを、wpフォルダ以下をドメイン直下に見せる様にインストールした場合、トップページ以外が表示されない事があります。
つまり、トップページだけが表示され、トップページ以外が404エラーとなってしまう現象です。
この問題の解決策を説明します。
この問題は、Wordpressが生成する「.htaccess」の中身が適切でないために起こるものです。
解決策としては、ドメイン直下(=wpフォルダの1つ上の階層)の「.htaccess」について、↓この様にして下さい。
# BEGIN WordPressRewriteEngine 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を利用している場合には注意が必要です。