【WordPress】index.htmlとindex.phpを共存させる

スポンサーリンク

既存のサイト(非wordpress)の裏でwordpressのサイトを導入する。

基本、私の守備範囲の話ではないのですが、今回クライアントサイトにて、
wordpressを導入して欲しいと依頼されました。
テストサーバーに一度導入したり、サーバー内にディレクトリを区切るというのは
最終的な導入の際に非常に手間がかかるので、既存のサイトの裏でwordpressを
稼動しつつ、既存のサイトも見れるようにしました。
この際、問題になるのは、ドメイン直下に「index.html」「index.php」が
共存してしまうことです。

問題になる現象:index.htmlがあると、index.phpが見れない。

・http://aaaa.com/index.php へアクセスすると、http://aaaa.com/ へ
 リダイレクトされてindex.htmlが表示されてしまいます。

 http://aaaa.com/ → index.html 表示
 http://aaaa.com/index.html → 表示
 http://aaaa.com/index.php → 表示できない

 クライアントに確認してもらうためには、どうしてもこのリダイレクトを
 回避したいわけです。
 最初、てっきりサーバー側の.htaccessか、wordpress側の.htaccessを
 設定するのかと思ったりもしたのですが、wordpress側のファイルを
 修正することで可能でした。

WordPress内のリダイレクトの設定を回避する

 wordpressにて、index.phpへのアクセスをhttp://aaaa.com/などの
 トップへリダイレクトを設定しているのは、
 wp-includes > canonical.php にあります。
 バージョン 3.4.1 -ja の場合、このファイルの325行目にある
$redirect['path'] = preg_replace('|/index.php/*?$|', '/', $redirect['path']);

こちらをコメントアウトします。

そうすると、
http://aaaa.com/ → index.html 表示
http://aaaa.com/index.html → 表示
http://aaaa.com/index.html → 表示できる

となります。

ただ、注意点としては、WordPress内の「Home」のリンクは
修正されず、クリックすると「index.html」を表示してしまいます。

今回はその点は特に問題にはならないので、そのままと。

ここは必要であればその時にでも考えたいと思います。

スポンサーリンク

シェアする

フォローする

スポンサーリンク