RedHatでのApacheのUserDirの設定について

このQ&Aのポイント
  • RedHatでのApacheのUserDirの設定について相談です。
  • DocumentRootは「/etc/apache/public_html」ですが、UserDirでの設定がうまくいきません。
  • http://127.0.0.1/~hoge/とアドレス指定して、/etc/apache/USERS/hoge/public_html/index.htmlを参照したいのですが、どうしてもうまくいきません。
回答を見る
  • ベストアンサー

Aapache の UserDir の設定

RedHatでapacheを利用しています。 ・DocumentRootは 「/etc/apache/public_html」 UserDirで「disable」を指定するかわりに、 ・「UserDir /etc/apache/USERS/*/public_html」 としており、 ・http://127.0.0.1/~hoge/ とアドレス指定して ・「/etc/apache/USERS/hoge/public_html/index.html」 を参照しにいきたいのですが、どうしてもうまくいきません。 hoge,public_html,index.htmlのどれもパーミッションは777にしています。 ちなみに、 http://127.0.0.1/http://127.0.0.1/cgi-bin/ も 自分の思った通りに動いてはくれました。 ・「<Directory "/etc/apache/USERS/*/public_html">」 の中の表記は ・http://127.0.0.1/ で見ることができる ・「<Directory "/etc/apache/public_html">」 と同じにしています。 いろいろと調べたのですが、あっているような気がしてなりません。 どこがおかしいのでしょうか?お答えを宜しくお願いします。

  • ryo-3
  • お礼率64% (146/226)

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

  • ベストアンサー
回答No.1

あっているようなので凄く初歩的なことを確認します。 すみません。 1.mod_userdirは有効になっていますか。 2.設定変更後、Apacheの再起動は行っていますか。 3.No.1,2ともOKの場合、 「UserDir public_html」 「<Directory "/home/*/public_html」 として、ユーザのホームディレクトリ下にpublic_htmlを作ったらどうなりますか。 4.error.logをはどうなっていますか。確認すると解決の助けになります。

ryo-3
質問者

お礼

遅くなりましたが、無事解決できました! どうもありがとうございました。

関連するQ&A

  • apache1.3でのUserDir設定について

    apache1.3.37を使用してます。 httpd.confを下記のようにして、UserDirを有効にしてます。 <IfModule mod_userdir.c> UserDir /home/*/public_html/index.html <Directory /home/*/public_html> AllowOverride All </Directory> </IfModule> ※UserDir関連では上記以外変更してません。 この設定で、http://www.xxxx.jp/~useridを開き /home/userid/public_html/index.htmlは表示されるのですが、 画像ファイル等だけ、DocumentRootに指定したディレクトリを 見に行ってしまいます。(エラーログにて確認) 当然、画像はDocumentRootで指定したディレクトリではなく 、/home/userid/public_htmlに入ってるので表示されず ×マークになります。 画像ファイル等も/home/userid/public_html直下から参照したいのですが どのようにすれば良いでしょうか? 設定が不足してるのでしょうか? また、/home/userid/public_html配下にcgiと言うディレクトリを 作成し、CGIを動作させたいのですが、その場合どのような設定を 追加すればよいのでしょうか? よろしくお願いします。

  • ~user を表示できない

    RedHat8.0+Apache2.43でウェブサーバーを立てたんですが、トップページは普通に表示できるのにユーザーのページが表示できません。/etc/httpd/conf/httpd.confでは <IfModule mod_userdir.c> # UserDir "disable" UserDir public_html </IfModule> としてあります。ユーザー(taro)のディレクトリのパーミッションは [root@aurora public_html]# pwd /home/taro/public_html [root@aurora public_html]# la 合計 16 drwxr-xr-x 2 taro users 4096 1月 31 16:36 . drwxr-xr-x 23 taro users 4096 5月 30 17:35 .. -rw-r--r-- 1 taro users 2936 1月 31 16:36 TokyoTime.class -rw-r--r-- 1 taro users 53 1月 31 16:36 index.html [root@aurora public_html]# です。 ユーザーのページを見れるようにするにはどうしたらいいでしょう?

  • ユーザーページの設定および公開について

    ユーザーページの設定および公開について教えてください。  /var/   + www/    + html/      + index.html  /home + test/    + public_html + index.htm http://aaaaaa.com/でindex.htmlが見れますが、 http://aaaaaa.com/~test/でindex.htmを見るためにはどうしたらいいですか? http://aaaaaa.com/~test/だと HTTP 404 - ファイル未検出 Internet Explorer が表示されます。 apacheのエラーログには [Sat Sep 24 22:04:00 2005] [error] [client 192.168.11.3] File does not exist: /var/www/html/~akaeda [Sat Sep 24 22:04:00 2005] [error] [client 192.168.11.3] File does not exist: /var/www/html/favicon.ico と表示されています。 documentrootは/homeに変更しているのですが、有効になっていないのでしょうか。 httpd.comの設定は DocumentRoot "/home" # This should be changed to whatever you set DocumentRoot to. # #<Directory "/var/www/html"> <Directory "/home"> # UserDir: The name of the directory that is appended onto a user's home # directory if a ~user request is received. # #UserDir public_html UserDir public_html と、しています。 なにか抜けているところがあればご教授お願いいたします。

  • apacheのユーザーディレクトリの設定

    Fedora Core6のapacheのユーザーディレクトリの設定で悩んでいます。 設定ファイル(httpd.conf)には以下のように記述しています。 #UserDir disable UserDir public_html <Directory /home/*/public_html> AllowOverride FileInfo AuthConfig Limit Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec <Limit GET POST OPTIONS> Order allow,deny Allow from all </Limit> <LimitExcept GET POST OPTIONS> Order deny,allow Deny from all </LimitExcept> </Directory> ユーザー登録をして/home/ユーザ名/にpublic_htmlフォルダを作成して、index.htmlページを作り、http://localhost/~ユーザー名/index.htmlにアクセスしましたが、「403 Forbidden」となってしまいます。 http://127.0.0.1/~ユーザー名/でアクセスしても「403 Forbidden」になります。 フォルダやファイルのパーミッションをいろいろと変えてみましたが表示されません。 こちらはLinux勉強中の初心者です。 よろしくお願いします。

  • ローカルのPHPファイルを表示できない

    LinuxでPHPの開発の勉強をしようとLAMPのインストールをしています。 EeePC 1000HにUbuntu 10.10を入れています。 昨日、Apache2.2 PHP5 MySQLを、apt-getで入れました。 info.phpというファイルを作り、 <?php phpinfo(); ?> と書いて保存しました。 Apache2.2では、localhostのデフォルトのDocumentRootが  /etc/apache2/sites-available/default に指定されていて、   /var/www  となっています。ここにinfo.phpを保存してfirefoxで  http://localhost/info.php を開くと、無事にinfoページがでました。ここまでは問題ありません。 次に、UserDirをa2enmodコマンドを使って設定し、 ユーザー(hoge)の homeディレクトリ以下にpublic_htmlをつくりました。この下に、 通常のindex.htmlファイルを保存して、 ~hoge/index.html が開くことも 確認しました。 その後で、 /home/hoge/public_html/ 以下にinfo.phpを保存し、 firefoxで開こうとすると、「アプリケーションの選択もしくは保存」という いつものダイアログが出てきてしまいます。 このように、/var/www に置いた場合と、public_html以下に置いた場合で firefoxの挙動が変わります。 apache2の /var/www へのアクセス指定するファイルが、 apache2/sites-available/defaultで、以下のようになっています。 <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> この中身の部分を、 apache2/mods-available/userdir.conf にコピペし、以下のようにしました。 <Directory /home/*/public_html>  Options Indexes FollowSymLinks MultiViews  AllowOverride None  Order allow,deny  allow from all   </Directory> apache2もリスタートしましたが、結果は変わりませんでした。 ここまでで行き詰まりました。 どなたか解決法を教えていただけませんか。 よろしくお願いします。

    • 締切済み
    • PHP
  • 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の起動時にWarningが出ます

    みなさんこんにちは。 Apacheの起動時にWarningがでるのですが、原因がわかりません。 Warningの内容は Warning: DocumentRoot [/home/user_hoge/public_html] does not exist というものです。 OSはWhiteBoxというLinuxです。 httpd.confに下記の設定をしています <VirtualHost 12.34.56.78> ServerName xxxx.xxxxxx.co.jp ServerAdmin admin@xxxxxx.co.jp DocumentRoot "/home/user_hoge/public_html" </VirtualHost> 実際にuser_hogeを作成していて、上記DocumentRootのディレクトリ /home/user_hoge/public_html も存在しています。 しかしなぜかディレクトリが存在しないと言われてしまいます。 ディレクトリの権限は誰でも見れるように付けています。 どこかのサイトで同じ現象の書き込みがあって、 SELinuxを無効にしたらできたというのが書いてあった のでやってみたのですがやはり同じでした。 (Linux初心者のためSELinuxがなんなのかもよくわかりませんが。) どなたか解決策を思いつく方がいらっしゃれば是非ご教授いただけ ればと思います。 よろしくお願いいたします。

  • RedHat7.3 apache-2 ユーザーのページが見れない。

    ブラウザを立ち上げて http://localhost/ ってやると/usr/local/apache2/htdocs/index.htmlが見えるのですが、 taroというユーザーを作ってホームディレクトリのしたに ~taro/public_html/index.html をつくってやると Forbidden You don't have permission to access /~taro on this server. Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request. Apache/2.0.39 Server at localhost Port 80 といわれちゃいます。ちなみに.httpd.confの中の所では #UserDir public_html <IfModule mod_userdir.c> UserDir public_html </IfModule> となっています。 どうすれば見れるようになるのでしょうか?

  • apacheのCGI設定について教えてください。

    CGIの勉強のために、古いパソコンに fedora core 4 をインストールしてapache でローカルのテスト用サーバーにしようとしています。 /var/www/html に設置した簡単な perl CGI は動くのですが、同じものをユーザーのホームディレクトリに設置すると、internal server error になってしまいます。 ***** 以下 httpd.confの抜粋です。***** #UserDir disable UserDir public_html <Directory /home/*/public_html> AllowOverride All Options Includes ExecCGI FollowSymLinks SetHandler cgi-script </Directory> AddHandler cgi-script .cgi .pl ************************************** サーバーのエラーログを見ると Premature end of script headers: test.cgi となっています。htmlをprintしているだけのスクリプトで、/var/www/html では動くので、apache の設定の問題かと思っています。 ちょっとカテゴリーが違うかもしれませんが、よろしくお願いします。

    • ベストアンサー
    • Perl
  • apache2の設定 public_html?

    こんにちは。 apacheを自分で設定してみてふと気になったことがあります。 httpd.confでDocumentRootを指定する、というのはわかるのですが、 よくプロバイダのWebスペースの設定はPublic_html以下にindex.htmlを 作ってくださいと書いてあります。 そしてそのページを見る時は、 http://www.kakuuno.net/username/index.html になると思います。 これってどうやってDocumentrootを指定しているんでしょうか? /home以下を指定したらきっとページを見る時は、 http://www.kakuuno.net/username/public_html/index.html でないと 見ることが出来ないような気がするんですけど・・・。