Forbidden
既存サイトに、新たにWordPressをインストールし、最初の管理画面アクセスフェーズで、
という無常のメッセージが。
確かに、上階層には既にWordPressや他のcgiがインストールされており、.htaccessファイルも存在する。その中にはBasic認証が入っているのだが、これは既に現時点で認証済みになっている。
なんだ?ファイルのパーミッションはフォルダが755、ファイルは644で通常通りだ。いろいろググってみるが関連記事は見つからない。大体が、index.phpと.htaccessファイルを移動するか、パーミッションを変更する事で解決される事が多い。でも今回は事象として当たらない。
.htaccessファイルを消すが・・・
試しに、一つ上位にある.htaccessファイルを削除してみたら、管理画面にすんなり入れてしまった。
その代わり、同階層にあるCGI(perl)が止まってしまう。
戻すとperlは動き出すが、やはりWordPressはまた403エラーになる。
しばし悩んで・・・ふと気が付いた。
wp-adminは本来wp-admin/index.php。perlは拡張子が.cgi。
.htaccessをよく見てみると、
DirectoryIndex index.cgi
が入っとる。
これか。あぁそうだわ。
試しに、ブラウザのアドレスバーに wp-admin/index.php と直接入力してみると表示された。ビンゴです。
ファイル自体があるのに403エラーと聞いて、wp-adminフォルダ配下にアクセスできないのかと思っていたが、違った。.htaccessファイルによって、デフォルトの「wp-admin/」フォルダ内のindex.cgiを探させてしまっていたのだった。
そんなファイルは確かに無い。存在しないファイルにアクセスする場合って、403だったっけ。なんかの試験に出てきそうだ。
対応策
なので、今回インストールしたWordPressフォルダの.htaccessファイルに
DirectoryIndex index.php
を追加する事で、問題なくアクセスする事ができた。
ちょっとの勘違いで全然違う方向に進んでしまうのだなと反省。気を付けよう。
コメントを残す