サポート » マルチサイト » 親ドメインにindex.phpを置かない方法

  • 解決済 nnishimura

    (@nnishimura)


    お世話になります。

    以下のような構成でサブドメイン制のWordpressのマルチサイトをセットアップしました。

    example.com (Hetemlサーバーの/web/exampleフォルダ参照)
    sub.example.com (/web/exampleフォルダ参照)
    sub2.example.com (/web/exampleフォルダ参照)

    example.comのルートディレクトリ(/web/example)にはすでにindex.htmlが設置されているので、最終的に、

    example.com : 元々ある、静的index.htmlを表示
    sub.example.com : WPのThemeのindex.phpを表示
    sub1.example.com : WPのThemeのindex.phpを表示

    としたかったのですが、
    やはりサブドメイン側でもindex.htmlが表示されてしまいます・・・

    何か良い方法はありませんでしょうか。
    ご教授のほどお願いします・・・

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • サーバーの設定によるとは思いますが、DirectoryIndex という設定がありまして、URLがディレクトリ名で終わる場合、どのファイルを探しに行くかという設定があります。これが index.html のほうが優先順位が高いので、これが表示されるんですね。

    これをサブドメイン等で切り分けるには、DirectoryIndex の設定を変更し、index.php が先に読み込まれるようにした上で、index.php を編集して

    
    <?php 
    if( $_SERVER['HTTP_HOST'] == 'example.com' ) {
       include 'index.html';
       exit();
    }
    

    みたいなコードを書けば一応実現はできるかもしれないです。
    ですが、かなりトリッキーなやり方ですし、オススメはできないです。

    index.html の内容を元にWordPressのテーマを作成し、それを example.com のサイトに適用するのが一番スマートかなと思います。

    Directoryindexの設定は知りませんでした…
    教えてくださりありがとうございます。
    またその設定で期待通りの動作しました!

    今回事情があってindex.htmlをwp化できないので
    一度その方法で進めてみようと思います。
    ご回答ありがとうございます!

    解決済みとします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「親ドメインにindex.phpを置かない方法」には新たに返信することはできません。