• 締切済み

public_htmlフォルダについて

現在webサーバを構築し、ドキュメントルート(/var/www/html)に「index.php」を置いてクライアントからの表示は確認したのですが、 このドキュメントルートに「test」というフォルダを置いて、その中に「index.php」を置くと、「このページの表示が認められていません」というメッセージが表示されてしまいます。 http://centos.server-manual.com/apache.html こちらのサイトが参考になるかなと思い見ていたのですが、「public_html」って何なのでしょうか? この類の質問は色々あがっているのですが、自分が知りたい答えがなかなか見つけられなかったので新規に質問させていただきました。 知りたいことは・・・ 1.「public_html」の設定(ファイル内の編集)は必要なのか? 2.ドキュメントルート直下の「index.php」と「test」フォルダとtestフォルダ内の「inde.php」は全て同じパーミッション(646)なのに表示出来ないのは何故なのか・・・ 以上、有識者の方がおられたらご教授お願いいたします。

  • ya-cha
  • お礼率68% (184/268)

みんなの回答

  • pakuti
  • ベストアンサー率50% (317/631)
回答No.1

まずはapacheのログを確認しましょう /var/log/httpd/の配下にあります。 恐らくはSELinuxが悪さをしているのだと思われますが。 http://pocketstudio.jp/linux/?FC4%2FSELinux%2FSELinux%20%A4%F2%CC%B5%B8%FA%A4%CB%A4%B9%A4%EB%A4%CB%A4%CF%A1%A9 public_htmlは、ユーザ用のディレクトリです。 URLのように、DocumentRootを変更する必要は特に無いかと思われます。

ya-cha
質問者

お礼

ご回答ありがとうございます。 まずSELinuxですが、 「SELINUX=disabled 」としております。 ログについてですが、accessとerror両方見たところエラーが出ておりました。以下はerror_logです。 [Tue Jun 30 13:22:49 2009] [error] [client 192.168.0.6] (13)Permission denied: access to /test/index.php denied [Tue Jun 30 13:22:49 2009] [error] [client 192.168.0.6] File does not exist: /var/www/html/favicon.ico 続いてaccess_logです。 192.168.0.6 - - [30/Jun/2009:13:22:49 +0900] "GET /test/index.php HTTP/1.1" 403 219 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; Sleipnir/2.8.5)" 192.168.0.LR 2.0.50727; Sleipnir/2.8.5)" 192.168.0.6 - - [30/Jun/2009:13:22:49 +0900] "GET /favicon.ico HTTP/1.1" 404 209 "-" "Sleipnir/2.8.5" やはり原因はパーミッションの設定なのでしょうか?

関連するQ&A

  • CentOS WEB開発 フォルダパーミッション

    職場で、Linuxの経験が無いにも関わらず WEBサイトのサーバ移行をしていまして、躓きました。 新サーバはAWSにてCentOS 6.9 Apache 2.2.15 php 5.3.3となっています。 httpd.conf内にて、デフォルトのDocument Rootから 変更し、そのフォルダ以下にhtmlやphpといった必要な ファイルを置いています。 デフォルトのDocument Rootやその近辺(一つ上の階層)では 置いたhtmlやphpをブラウザで表示することができますが 新たにDocument Rootに設定したフォルダだと 403 Forbidden You don't have permission to access /index.html on this server. と表示されたので、該当のフォルダのパーミッションを 755(775や777も試しました)、ファイルのを644に設定し WEBで見ても現象は変わりません。 -rw-r--r--. 1 apache apache 24 Dec 25 01:52 index.html -rw-r--r--. 1 apache apache 3049 May 16 2017 index.php drwxr-sr-x. 9 apache apache 4096 Dec 25 08:13 www(←Document Rootに設定したフォルダ) .htaccessも変更したDocument Rootフォルダに置いてます。 (中身は下記2行ですが) AddHandler x-httpd-php5 .php .phps DirectoryIndex index.php index.html index.htm 他に何か考慮する点はありますでしょうか? 宜しくお願いします。

    • ベストアンサー
    • 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)のアドレスを見に行ってないようなので、いろいろ試したのですがどうもうまくいきません。何が悪いのでしょうか?

  • Apache2.2のドキュメントルート変更ができない

    こんにちは。 apache1.3を今まで利用していたのですが、今回2.2を利用するにあたり、ドキュメントルートの変更が出来なくて困っています。 通常、ドキュメントルートは/var/www/htmlになっているのですが、今回(/home/test)に変更したいと思いDocumentRoot "/home/test"としました。ドキュメントルートを変更したので、以下の<Directory>も<Directory "/home/test">と変更したのですが、うまくいきません。 エラーがPermission denied: access to /index.html deniedと出ていますが、user,groupもtestに変更しております。 1.3の時はうまくいったのですが、2.2になって何か変更があったのでしょうか? どなたかご教授お願いします。

  • Fedora7でCGIが動きません

    CGIとPHPを使おうと思い、 Apacheで設定したんですけど CGIとPHP両方共に403 Forbiddenと表示されて You don't have permission to access /test.php on this server. ---------------------------------------------------------------- Apache/2.2.8 (Fedora) Server at 192.168.11.240 Port 80 この様に表示されてしまいます。 エキサイトで翻訳してみると あなたはこのサーバにアクセス/test.phpに許可を持っていません。 って書いて有るようですが如何すればアクセスした人全てに 許可をする事が出来るんですか?Apacheのhttpd.confの何処を修正 すれば宜しいのでしょうか?CGIの方はchmod 755 フォルダ名.cgi って打ち込んでパーミッションを変更しましたが駄目でした。

  • xoopsが設置できません。(インストーラページが表示されない)

    linax(fedora8) + apache + php + MySQL のサーバー環境を立ち上げ、 xoopsでウェブサイトを作成しようと考えています。 参考書に従い、上記サーバー環境をインストールしました。 その後、xoops cubeをダウンロード解凍したものを、 apache所定のフォルダ(/var/www/html)に設置し、 ブラウザから、インストール画面(install/index.php) にアクセスしましたが、 空白のページが表示されます。 phpが機能していないのかと考え、同ディレクトリに <? phpinfo() ?>と表記したファイルを設置してテストをすると phpの情報が正しく表示されています。 MySQLは、rootのパスワードを設定したところですが、 テスト方法がわからないので、何もしておりません。 全体的に知識が乏しく、初歩的なミスを犯している可能性もありますが、 なにか、心当たりのある箇所があればご指摘頂けると助かります。 よろしくお願い致します。

    • ベストアンサー
    • PHP
  • ウェブブラウザからファイルを操作することができません。(Apache - PHP - Linux)

    ウェブブラウザからファイルを操作することができません。 [/var/www/test/index.php] ...(中略)... system("pwd >> /var/www/test/comment"); ...(中略)... ファイル'/var/www/test/comment'に変化は見られません。 パーミッションは(7,7,7)にしてあります。 # ls -la /var/www/test drwxrwxrwx 3 user1 user1 4096 2010-01-12 20:58 . (ちなみに、/, /var, /var/wwwも全て(7,7,7)にしてあります。) # ls -la /var/www/test/comment -rwxrwxrwx 1 root root 1 2010-01-12 20:58 /var/www/test/comment ちなみに、以下のようにエラーが出た時に書き込むような設定にしても、何の変化も見られません。 system("pwd 2> /var/www/test/comment"); また、以下の一行からはユーザとしてapacheが表示されます。 [/var/www/test/index.php] ...(中略)... system("whoami"); ...(中略)... [ブラウザ] apache コマンドラインから入力するとうまく行き、書き込みは成功します。 # pwd >> /var/www/test/comment [/var/www/test/comment] / 想像するに、ユーザapacheでのファイル操作が禁止されているようです。 環境はLinux(Fedora10)で、Apache/2.2.10 (Unix)、PHP 5.2.9 (cli)です。 困り果てています。解決策をどうかよろしくお願い致します。

  • ドキュメントルートより上のディレクトリにあるPHPファイルをインクルードするには?

    外部に公開する必要がないディレクトリをドキュメントルートの外に置く構成のPHPプログラムを使用したいのですが、ドキュメントルートより上のディレクトリのPHPファイルをインクルードするにはどうすればよいのでしょうか? 例えば、DocumentoRootが/var/www/htmlで、 /var/www/html/test.phpから/var/www/data/include.phpをインクルードするようなケースです。 include.phpをtest.phpと同じディレクトリ(/var/www/html/)に置いた場合はインクルードできることを確認しています。 パーミッションは設定してあります。 phpinfo()でinclude_pathは「.:」となっています。 http.conf、php.ini等も編集することができる環境です。 ご存知の方がいらっしゃいましたら、アドバイスをお願いいたします。

    • ベストアンサー
    • PHP
  • FTPでapacheドキュメントルートへ転送できない?

    RHL7.0で、apacheをインストールしました。 そのドキュメントルート(デフォルトの/var/www/html配下)にwindowsPCからFTPであるユーザでログインし、アップロードを試みたのですが、できません。 下記の事もしてみました。 (1)apacheドキュメントルートのファイル所有者をあるグループに全て変更  chgrp -R グループ名 /var/www (2)ドキュメントルートのディレクトリ/var/wwwのパーミッション変更  chmod 2775 /var/www(これでwwwはdwxdwsr-xとなった) (3)ドキュメントルートへFTPログインでアップロードするユーザを、(1)のグループへ加える。 このユーザ名でFTPログインできますが、/var/www/html/index.htmlを変更しようとすると fxfer、アクセス件がありません、と出ます。 (2)の事は本に書いてあった事をそのまま実行したのですが、-Rオプションも付けるべきなのでしょうか? chmod 2775 /var/www/htmlとすべきなのでしょうか? 細かく考えすぎなのでしょうか? すみませんが宜しくお願いします。

  • CentOS + apache で403エラー

    CentOS + apache で403エラー CentOS5.4とapache2.2でwebサーバを構成中ですが、 全てのページで403エラーが返ってきます。 いろいろ試してみましたが、 ルートディレクトリの/var/www/htmlを作成し直した際に、 何故か一度だけ動きました。理由は不明です。 その後OSを再起動した後は また見られない状態にもどっています。 どなたか分かる方、アドバイスをお願いします。 以下の事は試してみました。 ==================================================== 1. apache,osの再起動。 2. iptables停止 3. ブラウザ表示 > You don't have permission to access / on this server. /etc/httpd/logs/error_log 表示 > Permission denied: /var/www/html/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable だったので、ルートディレクトリ以下全てのパーミッションを777に、 それまではディレクトリ755、ファイル644 4. /var/www/htmlから、.htaccessを削除、テスト用index.htmlを作成 ブラウザ表示 > You don't have permission to access / on this server. > Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request. error_log > Permission denied: access to /error/noindex.html denied /var/www/error/noindex.htmlのパーミッションは755です。 ======================================================= 以上です。宜しくお願いします。

  • MediaWikiの設置ディレクトリと、ドキュメントルートの設定

    MediaWikiの設置ディレクトリと、ドキュメントルートの設定について教えてください。 ■現状 ・MediaWikiを「/var/www/html/wiki」配下に設置。 ・「http://ホスト名/wiki/」で使用中。 ・ドキュメントルートは「「/var/www/html/」 ■やりたい事 ・MediaWikiは現状のまま「/var/www/html/wiki」配下に設置。 ・「http://ホスト名/」でMediaWikiを利用したい。 ■試した事 ・ドキュメントルートを「/var/www/html/wiki」に変更。 ・ドキュメントルート配下に確認用のindex.htmlを設置。 ・「http://ホスト名/」で確認用のindex.htmlが参照可能。 ・index.htmlを削除。 ・「http://ホスト名/」でアクセスすると、Not foundで404エラーになります。 この時、ブラウザのアドレス内容が「http://ホスト名/wiki/index.php/<省略>」となっています。 ・LocalSettings.phpの$wgScriptPath が "/wiki"となっているため、"/" にしましたがスタイルシートの反映されない画面が表示され、正常に動作しません。 ■主な環境 Ubuntu Apache2 初歩的な設定だと思いますが、ご教示願います。