- ベストアンサー
Apacheのディレクトリインデックスの設定方法
- WordPressでHPを作成しようと思いたち、MySQLやPHP、Apacheをインストール・設定していたのですが、ディレクトリインデックスの設定について困っています。
- Admin Web様のサイトの情報に従い、hello.htmlを指定の場所に配置し、httpd.confのディレクトリインデックスを書き換えても、index.htmlしか参照されず、他のHTMLファイルが表示されません。
- この問題の解決方法や、index.html以外のHTMLファイルを表示させる方法について教えてください。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
う~ん。。そうではなく、 アドレス + "/" この場合が、index.html なだけですよ アドレス + "/hello.html" なら表示できるはずです。 なので、Directory には、パスは書かないでください。 例として、 C:\Apache24\htdocs\hello.html とかくのは、NGなので C:/Apache24/htdocs/hello.html ですが、この場合 C:\Apache24\htdocs\hello.htmlという”フォルダを参照します” index.htmlを用意して、そこにメニューなどを貼り 希望のhtmlが表示できればOKだと思いますよ。
その他の回答 (4)
- notnot
- ベストアンサー率47% (4900/10358)
>基本的に書いてあることをそのままやっただけなのですが、それではダメだということでしょうか? リンク先のページを見ましたが、間違ったことは書いてないので、書いてあるとおりにやれば書いてある結果が得られるはずです。 なので、あなたは書いてあることをそのままやっていません。 どこが違っているのか、「自分は書いてあるとおりに出来ていない」という意識を持って再度チェックしてください。「自分は間違っていないはずだ」という意識だと間違いは見つかりません。 このページに至るまでのどこかですでに間違っているという可能性も十分ありますね。
お礼
ご回答ありがとうございます 何度もチェックし試行錯誤し間違いはないかと探しまわったのですが、結局ダメでした。確かにこのページ以前ですでに何かしら間違っており、そもそもその通りにできようがない、と言うのは仰るとおりな気がします とりあえず全部消してもう一度最初からやり直そうと思います。まさか導入するだけでここまで難儀になるとは思いませんでした…もっと勉強します
- AsarKingChang
- ベストアンサー率46% (3467/7474)
次のステップ?としてですが、 C:\Apache24\htdocs\index.html を置いてみると、表示できますか? #Apacheそのものが動いているかを、確認したいためです。
お礼
すいません、試行錯誤してapacheを再起動したりhttpdを書き換えたりしていたら、いろいろなエラーが出て対処できなくなりました こんな夜遅くまで付き合って頂いて言いづらいのですが、もう一からやり直したほうが早いと思うので、やり直してみます。本当に申し訳ありません…
- AsarKingChang
- ベストアンサー率46% (3467/7474)
確認なのですが、 DocumentRootはどこになってますか? これが、表示されるサーバー側のパスになります。
お礼
検索したところ、 c:/Apache24/htdocs と出ました 先ほどまでC:\Apache24\htdocsと表記していたのは間違いでしたが、場所は同じはずです
- AsarKingChang
- ベストアンサー率46% (3467/7474)
追加、リクエスト時に、 index+何かが、本来理想で、それ以外を使うべきではないのですが、 "index.html"とは限らない、 "index.shtml"かもしれないし、 "index.php"かもしれない。 "index.cgi"なこともあるでしょう。 書き換えると、トラブルが増えます。 http://httpd.apache.org/docs/2.2/ja/mod/mod_dir.html#directoryindex DirectoryIndex index.html ここに追加。 を、confなり、.htaccess でオーバーライドすれば一応出来ますので、 どうしてもダメなら、こちらも、お試しを。
お礼
ご回答有難うございます 失礼ながら、自分は右も左も分からない超初心者なので、あまり良く理解できておりません(泣) 参照したAdminWeb様のサイトを見て、その通りにやっただけなのですが、そのサイトでは DirectoryIndexの右には"/hello.html"とは書いてあらず、"hello.html"と書いてあるだけなのですが、そこの違いは何なのでしょうか? そして、書き方に語弊があったのかもしれませんが、Directoryにはパスは書いておりません AdminWeb様のサイトにおいてあるhello.htmlをダウンロードして、ドキュメントルートに置いたということを伝えたかったため、そのような書き方にしました 基本的に書いてあることをそのままやっただけなのですが、それではダメだということでしょうか? しかし、おっしゃられたとおりにhttpd.confのディレクトリインデックスの右側"hello.html"を"/hello.html"に書き換えたのですが、何も変わりませんでした… index.~でないと認識しないということでしょうか?しかし参照先ではhello.htmlでも表示されているようですし… すいません、理解力が足りずよくわかりません。自分で言っていることも間違いが多いかもしれません… もしよろしければもう少し詳しく教えて頂いてもよろしいでしょうか?