• ベストアンサー

apacheのファイル保存先について

apache(2.2.4)をインストールしたのですが index.htmlは見れるのに、index.htmlと同じ階層に置いてある ファイル、同じディレクトリに保存しているファイルに アクセスしようとするとエラーが出ます ファイル名がtest.htmlだとすると http://127.0.0.1/test.htmlです これは同じ階層にファイルを置いてはだめなんでしょか? それともどこかで設定して初めてアクセスできるように なるのでしょうか、それとapacheの操作のことが詳しく載ってある 書籍を教えてもらえればと思います。

質問者が選んだベストアンサー

  • ベストアンサー
  • vaio09
  • ベストアンサー率37% (756/2018)
回答No.3

DocumentRootの設定は間違っていませんか? apache.cfgを見て確認しましょう。 test.htmlを置いているフォルダと、Apacheが認識しているDocumentRootが違っている可能性がある~ということです。 たまたま現在のDocumentRootにindex.htmlというファイルがあってtest.htmlが無い場合の挙動のように見えますから、このような推測に至りました。 ためしにindex.htmlをリネームして、それでもindex.htmlが表示されるなら、この推測が当たっていると思いますが。

tadokoro12
質問者

お礼

色々調べてみたらDocumentRootの設定が間違えてました なぜかDocumentRootの設定のところがぜんぜん違うディレクトリを 指定しました。indexは見れるけどほかのファイルは見れないので なぜかと思っていました、ここの設定を直したら うまくtest.htmlを見ることができました ありがとうございます

その他の回答 (2)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

実はファイル名が test.html じゃないという可能性は? test.html.txt とかだったりしませんか?

tadokoro12
質問者

補足

どうやらhtmlの定義は間違えてないようです ファイルの名前はindex.htmlですね ファイアフォックスで見てもファイアフォックスドキュメントとして 認識されます

  • shimix
  • ベストアンサー率54% (865/1590)
回答No.1

(補足をお願いします) >アクセスしようとするとエラーが出ます どういうエラーですか?エラーの内容を書いてください。透視能力を持った人間は質問者さんが思われているほど多くいません(もちろん私もです)。またOSが書かれていませんが、index.htmlやご自分で置かれたファイルというのはDocumentRootで設定した場所にあるということでよろしいんですよね? Apacheについては、こちら↓が詳しいです。   http://httpd.apache.org/docs/2.2/

tadokoro12
質問者

補足

回答ありがとうございます。 エラーの内容は404エラーです。 >DocumentRootで設定した場所にあるということでよろしいんですよね? そうですね OSは2000pro、DocumentRoot/htdocs真下のファイルに アクセスしようとしてみたのですけどできませんでした 先ほどもいいましたがindex.htmlは開けます それなのにほかのファイルを開こうとするとエラーがでます。 confを設定したらいいのはわかっているんですがどこを どう設定したらいいかがわかりません・・・ 参考URLありがとうございます。

関連するQ&A

  • Apacheでアクセスを一つのファイルに集める方法

    Apacheであるディレクトリの場合必ずindex.cgiを見るように設定しようとしているのですがうまくいきません。 actionとAddHandlerを使って Action html-handler /index.cgi AddHandler html-handler .html のような設定を行っているのですが、 実際にそのディレクトリにファイルがないとファイルが見つからないというエラーになってしまいます。 中身はなんでもいいのアクセスされる、例えばhogehoge.htmlというファイルをおいてみると、無事index.cgiに飛んでくれます。 何かが効いてしまってファイルがないダメな状態になっているようなのですが、これこ解除する方法がわからなく困っています。 宜しくお願い致します。

  • apache2にアクセスできない!!!

    apache2をインストールしてhttpd.confの基本的な設定を行ったところ、デフォルトのindex.htmlがテスト用に作ったテキストだけのものならアクセスできるのですが、テキスト以外のファイルを表示させようとすると、アクセスできなくなります。 httpd.confの設定の基本的なことなのかもしれないですが、教えてください。よろしくお願いします。

  • Apacheサービスが起動できない php apache2.2

     Apache2.2をインストールしましたが、Apacheサービスを起動させる ことが出来なくて困っています。  私はPHPもApacheも初心者です。  SoftBankCreative社の、基礎からのPHPという書籍を参考として、設定等行いましたが、うまくいきませんでした。  そのため、Webで調べてみましたが解決できません。  以下、私の症例を記します。 ・listening sockets available shutting downエラーがでる。 ・Apacheサービスのタスクバーのアイコンは「赤・四角」 ・同タスクバーを操作すると、異様に動作が重い。 ・Startボタンを押しても変化がない ・上記にも関わらずhttp://localhost/を開いて「it works」の  メッセージが出る ・Apacheのサブディレクトリhtdocsにhtmlファイル「test.html」を  設置し、http://localhost/test.htmlを開くと、正常に開ける。 ・が、test.html内にphpを記述しても反映されないく、  また、test.phpを同ディレクトリに設置しても404エラーとなる  さらに、私の環境を記しておきます。必要なことは答えますので。 よろしくご指導お願い申し上げます。 ・windows/vista HomePremium SP1 ・Intel Core2Duo 2.53GHz ・メモリ 3.00GB ・32ビット ・セキュリティ:ウイルスバスター2009(最低限のセキュリティ設定)

    • 締切済み
    • PHP
  • Apacheのディレクトリ構成

    Apacheでテストサーバーを構築したいと思っています。 ディレクトリ構成は、 (1)/var/www/html/配下に通常のドキュメントを (2)/var/www/html/mrtg配下にMRTGのドキュメントを配置しています。 Apacheの設定DocumentRootは、/var/www/htmlです。 http://192.168.1.100/index.htmlでアクセスすると(1)が表示されます。 しかし、http://192.168.1.100/mrtg/index.htmlでアクセスすると、 403エラーになってしまいます。 その時エラーログには「client denied by server configuration: /var/www/mrtg/index.html」と表示されていました。 どうやら正しく(2)のアドレスを見に行ってないようなので、いろいろ試したのですがどうもうまくいきません。何が悪いのでしょうか?

  • windows上のapacheで日本語ファイル名の読み出し

    WindowsXPにApache1.3をインストールし、localhostとして使用しています。perl/cgiやphp5は問題なく作動していますが、localhostからアクセス可能なwindows上の日本語directory名や日本語ファイル名にアクセスできません。(リンクを貼ったり読み出しができません) 日本語ファイル名/ディレクトリー名にアクセスするためのhttpd.confの設定法を教えてください。

  • apache2でユーザーディレクトリが

    apache2でユーザーディレクトリを使いたいんですが ただのapacheではデフォルトでユーザーディレクトリがつかえるんですが 403でパーミッションを直して使えて apache2でいろいろ apache2.confなどにuserdir.cなどのモジュールを読み込ませたり sites-avalias/defaultに /home/*/public_htmlなど試してみたいんですが ダメみたいです ちょっと省略していますが ちなみにバージョンはApache/2.2.3です エラーは http://xxxxx/~ユーザー名 にアクセスすると 403ではなく404エラー フォルダが無いということは sites-avalias/defaultかapache2.confの設定がおかしいんでしょうか? ちゃんと /home/xxxx/public_htmlも作ってありますし パーミッションもあっています しかし <Directory /home/xxx/public_html>などの設定をしたいんですが sites-avalis/defaultに書くのか それともapache2.confに書くのかまぎらわしくて defaultのほうには<Directory /var/www>など書いてあって apache2.confにはmoduleなどいろいろ書いてあります apache2がhttpd.confではなくてまぎらわしくてよくわかりません それとバージョンなど古かったりなど違ったりして できないみたいです Apache/2.2.3でユーザーディレクトリを使っているかた 詳しく教えて下さいお願いします

  • ApacheでCGI以外のデータも全部表示可能にしたい

    ローカルサーバーとしてApacheを使っています。 CGIの動作ディレクトリをルートディレクトリ以下(localhost以下)に設定していて、それでCGIは動くのですが他のファイルにアクセスできません。AddHandlerの行にファイルタイプを追加することで対処可能だと聞きましたが、1つずつ設定するのではなく一括で全部のファイルにアクセスできるようにはできませんでしょうか?WWWサーバーとして使うわけではないのでセキュリティの問題は無視してくださって結構です。 あともうひとつ質問です。通常のウェブサイトではアドレスを「hoge/」のようにスラッシュ(/)で終えた場合、そのディレクトリにindex.htmlがあればそれを表示するようになっています。僕が使っているApacheもそうだったのですが、上で設定したディレクトリ(localhost)以下へアクセスする際、スラッシュで終えると403エラーが出てしまいます。アドレスをきちんと「/index.html」まで打てばアクセスできるようになりますが、ちょっと面倒です。せっかく今までは省略できたのに(ルートディレクトリに置いたcgi-binディレクトリ以下をCGI動作ディレクトリに設定していて、それを今回変えたのです)。今までどおりにアドレスを省略できるようにするにはどう設定すればよいのでしょうか? どうか宜しくお願いします。

    • 締切済み
    • CGI
  • apacheで ErrorDocument 404が利かない??

    apacheで ErrorDocument 404が利かない?? httpd.confにErrorDocument 404を設定しているのですが、まったく利きません・・・。 たいしたことをやっていないのに、機能しないので、 手順に間違いがあるのか分からなくなってしまいました。 ■環境 OS:WindowsXP apache 2.2.14 ■手順 1.apacheをダウンロードしてインストールする。 2.httpd.confに、以下を記述する。そのほかは何もいじらない。 ErrorDocument 404 /index.html 3.apacheを再起動する。 4.ttp://localhost/にアクセスする。「It works!」を表示することを確認する。 5.ttp://localhost/xxx.htmlにアクセスする(存在しないファイル)。  →index.htmlに返らず、ブラウザデフォルトの「ページが見つかりません」になる。 他にも試しました。 ドキュメントルートにerror.htmlを作成して、 ErrorDocument 404 /error.html にしてみたり。 でも、やっぱり「ページが見つかりません」になります。 ErrorDocument以外に何か設定する箇所はありますか? apacheに詳しい方がいらしたら、教えて欲しいです。 よろしくおねがいします。

  • Apacheインストールはできたのですが...

    ApacheをインストールしてApacheを起動してIE上でIPを入れるとTestページ見たいなものが表示されて「このページを変更してください。」と書いてあるのですがこのページがどこに存在しているのかわかりません。UNIX系OSではhomeの下にpublic_htmlというディレクトリを作ってそこにindex.htmlを作れば良いっていうのは知ってたんですがWindows上だとどうやってディレクトリ構成されるのか分かりません。Apacheは、apache_1.3.20-win32-no_src-r2.msiをインストールしました。先に進みそうで全く進まないので教えてください。

  • apache の DocumentRoot は分かったのですが・・・

    apache の DocumentRoot は分かったのですが・・・ apache をインストールしました。   /etc/apache2/sites-enabled/000-default を見ると、   DocumentRoot /var/www と書いてあります。そのすぐ下に、   <Directory />   ・・・   </Directory> という箇所があります。 ここで疑問なのですが、、、 外部からアクセスされるのは、DocumentRoot(/var/www)以下のディレクトリですよね? ルート( / ) はどのみちアクセスされないと思うのですが、なぜ、"/" に関する設定が必要なのでしょうか?   <Directory /var/www/> との違いがよく分かりません。