• 締切済み

DirectoryIndexの利用方法

こんにちは。よろしくお願いします。 apache2.2 php5 を使っています。 DirectoryIndexの利用方法について質問です。 「DirectoryIndex index.php index.html」 ↑上記のように書いた場合、 URLの最後が”/”で読み込んでくれるのが まずindex.phpで、もしindex.phpが無かった場合 index.htmlを探すという意味だと思うのですが、 index.phpがある場合、index.htmlを表示させるには URLの最後に”/index.html”と記述するしかないのでしょうか? URLが長くなるのでどちらも省略して表示させたいです。 ちなみに全体の目的は、 ログインしていないユーザーにはindex.phpを表示し、 ログイン処理が成功した後index.htmlを表示させるよう作成中です。 ログイン後の画面のURLの最後に”/index.html”と付いているのが とても変だと思います。 何かご存知の方どうかよろしくお願いします。

noname#106387
noname#106387

みんなの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

ログイン後index.htmlに移動することはありえないでしょう。 スタティックなhtmlだとログインしなくてもアクセスできちゃいませんか? それをおいておいたとして、index.phpですべて処理できそうです。 ログインさればindex.phpからindex.htmlのソースを表示するだけです

関連するQ&A

  • Apacheで、indexの拡張子別に優先順位を付けたい。

    あるディレクトリにindex.htmlとindex.phpのファイルがあるとします。 そこに、仮にhttp://www.○○.com/ というURLでアクセスできるとします。 ここに、ブラウザで「http://www.○○.com/」にアクセスすると、現在はindex.phpが表示されるようになっています。これを、どんな場合でもindex.htmlを表示させるようにしたいのですが、Apacheの設定でどこを変更すればよいのか分かりません。 関係ありそうな設定は、DirectoryIndexなのですが、現在は DirectoryIndex index.html index.html.var index.php という設定になっています。一応、設定通りに動いていることになりますが、これを拡張子別に、明示的に優先順位を付けたいと考えています。 index.htmlにアクセスできるようにするために、何か設定方法などありますでしょうか? Apacheバージョンは、2.0.54となります。 よろしくお願いいたします。

  • Apacheの仮想ディレクトリ設定について

    質問があります。 windows2000serverにApacheを導入したのですが、実現したいことがあります。動作する範囲は社内のあるフロアのみなので、外から見えるということは考えていません。 今、C:\Oracle\ora90\Apache\Apache\htdocs配下にaaaというディレクトリがあります。この配下には、index.phpというファイルが入っています。このindex.phpは表示する際にユーザID、パスワードを入力するウィンドウが立ちあがります。 URLにhttp://サーバ名/aaa/index.phpとすると動作するのですが、これを http://サーバ名/aaa/とだけ入力して動作するようにしたいのです。 httpd.confファイルを編集すれば出来るということが解ったので、DocumentRootをC:\Oracle\ora90\Apache\Apache\htdocs\aaaとしてみました。DirectoryIndexにindex.phpを加えました。 そうするとhttp://サーバ名/と入力するだけでindex.phpが動作します。よく考えればそうですね。 次に、aliasの設定に掛かりました。 Alias /aaa/ "C:\Oracle\ora90\Apache\Apache\htdocs\aaa/" という記述を加えました。 これでもうまくいくません。 Apacheの再起動は記述を変更するたびに行っています。 同じような事をしたことのあるかた、記述例などを教えて頂けるとありがたです。 よろしくお願いします。

  • DirectoryIndex に index.phpと書くと、index.htmlより先に表示される?

    DirectoryIndex に  DirectoryIndex index.html index.php と記述すると、順番的に、index.htmlがなかったらindex.phpが表示されるというようになると思うのですが、どうも、index.phpが先に表示されているようです。。 といいますか、index.phpが表示されているのではなく、phpファイルを開こうとするとダウンロードの画面が表示されてしまうのです。 いろいろと調べていったら、この症状が出たのに気づいたので、解決のきっかけになればと思いまして。 これは、httpd.confのどこを書き間違えるとこのようなことになるのでしょうか。

  • CGI

    MacOS10.10のApache2でCGIが動きません。 httpd.confの最後にこう記述してます。 <VirtualHost *:80> DocumentRoot "/Users/ユーザー/Sites/www" ServerName ドメイン <Directory /Users/ユーザー/Sites/www> AllowOverride All Options Indexes MultiViews ExecCGI FollowSymLinks AddType application/x-httpd-cgi .cgi .pl AddHandler cgi-script .pl .cgi DirectoryIndex index.html index.htm index.cgi </Directory> </VirtualHost> 記述は合ってると思うんですが……どこが間違ってるのでしょう?

    • ベストアンサー
    • Mac
  • Apacheのhttp.confの中の設定に書く順番はある?

    Apacheのhttp.confの中の設定に書く順番はあるのでしょうか? ディレクトリインデクスを設定したい(index.php)のですが、うまくできません。 <IfModule dir_module> DirectoryIndex index.html index.php </IfModule> と書けばよいとあるのですが、これを書いて、再起動させても、ブラウザでディレクトリを指定してもうまくいかず、index.phpまで指定するとうまく表示されます。 また、httpd.confは、Ubuntuのaptでインストールしたら白紙だったので、自分で書いていっています。 よろしくお願いします。

  • 403エラーではなく、正しく404を返す方法を教えて下さい。

    403エラーではなく、正しく404を返す方法を教えて下さい。 「/」止めでURLを記述した場合、何も対策をしない場合は、 そのディレクトリが表示されて、セキュリティ上、問題です。 そこでWeb領域の一番外側に、.htaccessで、「DirectoryIndex index.html index.shtml .ht」 として「.ht」で一覧表示をしないようにしています。 そうすると、削除したページにアクセスがあった場合、404を返さずに、403を返します。 Googleだったかは、一度インデックスしたページを検索リストから消すには、404を返す必要が あったように記憶しています。 消したページの替わりにnoindex, nofollowを置くのも手かも分かりませんが、 正しく404を返すにはどうしたらいいでしょうか? 勿論、冒頭の.htaccessはそのままで。

  • .htaccessの記述について教えていただきたいです。

    .htaccessの記述について教えていただきたいです。 例えば http://www.hogehoge.com/index.php?language=japanese というURLにアクセスした場合に http://www.hogehoge.com/index.html にリダイレクトされるようにしたい場合、 どのように記述をすればうまくいくのでしょうか? ネットで色々と調べてはいるのですが、 なかなか成功する方法が見つからずに困っています。 よろしくお願いいたします。

  • index.phpのページが開けない

    unix系のOSを使用しています。 apache、phpをインストールしましたが、 一度再起動したところ、inde.phpのファイルが開けなくなってしまいました。 /etc/apache2/httpd.confで以下追加設定しています。 AddType application/x-httpd-php .php .phtml AddType application/x-httpd-php-source .phps DirectoryIndex index.html index.php apacheの再起動をおこなってもphpのテストページが表示できません。 ファイルのダウンロード?のようなアプリケーションで開く、またはディスクに保存するという選択の画面が出てしまいます。 これは何が間違っているのでしょうか。

    • ベストアンサー
    • PHP
  • Kagoya Internet Routing使用している方!

    (/)でアクセスしたときにindex.shtmを表示させるためDirectoryIndex index.cgi index.html index.shtml top.htm<BR>を記述(htaccess)したのですがそうしてしまうとindex.shtmがないディレクトリはindex.htmがあってもディレクトリが表示してしまいます。この場合どう記述すればいいでしょうか?

    • ベストアンサー
    • CGI
  • htaccessで期間限定

    サイトのあるフォルダの中で、index.htmlとindex.phpを作り、普段はindex.html、 毎年1月1日~2月末日の期間だけindex.phpをトップページにしています。 .htaccessに 普段は DirectoryIndex index.html index.php 毎年1月1日~2月末日の期間は DirectoryIndex index.php index.html と記述して手動でFTPでアップしているのですが、これを自動にする方法がないでしょうか? htaccess 期間限定 などのキーワードで検索してみたのですが、毎年通用する書き方が見つけられません。 また2月は閏年の場合もあるのでどのように対処すれば可能かアドバイスいただけますでしょうか?

専門家に質問してみよう