• ベストアンサー

Apache設定でディレクトリごとにuserを帰ることはできますか。

こんにちわ, 今apacheでwebサーバーを立て酔うとしているのですが, 普通 *****: User tarou Group jirou *****: などをhttpd.confにかいてユーザーを指定しますが,この指定をたとえば, /hogehoge/以下のファイルに対してはユーザー「tarou」で指定する。 /foofoo/以下のファイルに対してはユーザー「hanako」で指定する。 というのはできるのでしょうか。 というのはサーバースクリプトPHPでシェルをまわしたいときにそのユーザーでないと実行できないこと(rsh)などがあるのです。 知っている方,よろしくお願いします。

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

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

でしたら アパッチのSuexec機能を使えば よろしいのではないでしょうか? ただし、これのアパッチのバグなどがあった時より Suexecのバグがあったほうの被害が悲惨です 十分検討の上導入してください

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • 78tch
  • ベストアンサー率31% (50/157)
回答No.1

hanakoのグループにtarouを追加して、シェルスクリプトにはグループにも実行権を与えるってするのでは。 おっしゃってるようなことはできないかと思います。 そして、このような運用はリスキーかも。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 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の設定

    Linuxの初心者です。 CentOSを使っていて、apacheの起動スクリプトの作成・実行権限の付与、ユーザの作成などが終わり、実際に起動させようと /etc/init.d/httpd start とやっても、以下のようなエラーメッセージが出ます。 Starting httpd: Syntax error on line 18 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/modules/libphp4.so into server: /usr/local/apache/modules/libphp4.so: cannot open shared object file: No such file or directory これの意味していることは何でしょうか? どうしたら解決できるでしょうか? よろしくお願いします。

  • Apache2のユーザフォルダ設定

    初投稿です。みなさんのお知恵を貸してください。 常時接続のWindows2000の自宅マシン(以下、サーバ)にApache2をインストールして、複数人のユーザが自分用のホームページを置けるようにしたいと考えています。 このとき、サーバ上に各ユーザがデータを置く場所と、URLの関係を以下のようにしたいのですが、設定がよくわかりません。 サーバ E:\home\user1\public_html\index.html URL: ドメイン/user1/index.html おそらく、Apacheのhttpd.confファイルの以下の設定で何とかなるとは思うのですが、どうすればいいのかわかりません。 ネット上で調べてみましたが、これだという情報がありませんでした。 DocumentRoot "E:/home/" <Directory "E:/home/user**/public_html"> よろしくお願いします。

  • apacheの設定について

    私は今までAnHttpdというhttpdを使っていました。これは全く設定がされていない状態から、必要なファイルをダウンロードしてインストールし、ウェッブページを立ち上げるまで数分もかかりませんでした。あまりにも簡単なのであまり学習効果がなく、私はhttpdの仕組みなどよく理解できないままでいます。 今回、大部分のサーバで用いられていると思われるapacheの設定についてお尋ねします。現在、これは問題なく起動しているということを前提としてお尋ねします。OSはLinux,Fedora7です。 やりたいこと:このサーバのあるフォルダに10数個のファイルを置いてそれをダウンロードできるようにしたい。htmlは必要なく、そのフォルダにアクセスしたら、ファイル名が表示されるようにしたい。そのファイル名は日本語です。 httpd.conf等をエディットしてそれが可能なフォルダ指定すればできると思います。どのように設定するのでしょうか。以前、apacheを使ってはいたのですが、私の理解の仕方に合致しないところがあって止めてしまいました。httpd.confの中身は許可、不許可の設定が入れ子状に出てきて結局どっちなんだ?となってしまいました。 以上、よろしくお願いします。

  • apache2.2 の設定に関して

    過去ににはlinux で apache1.3x の頃だと思いますが、apache の設定を行ったことがあります。 今回さくらインターネットと契約して、各種サーバの設定をコンソール上から行うことになりました。OS が FreeBSD (バージョンは未確認、確認方法が不明な為)ですが、apche の基本的設定は同じだと理解しました。 apache のバージョンが、2.2 になっていますが、基本的設定は httpd.conf で良いことは調べて確認しました。 現状(契約した後)では、取得した独自ドメインで確認ページを見れることは確認しています。 http://www.hogehoge.jp/ 独自ドメインでのアクセスは OK でした。 httpd.conf を確認して、DocumentRoot "/home/htdocs" も確認しました。 次に個々のユーザが、public_html でホームページを公開出来るように、httpd.conf に以下の情報を追加しました。 <Directory "/home/*/public_html"> Options FollowSymLinks ExecCGI Includes AllowOverride All Order allow,deny Allow from all </Directory> と記載して、apache を再起動させ、 http://www.hogehoge.jp/~hoge/index.html にアクセスすると。 Not Found The requested URL /~hoge/index.html was not found on this server. と出ます。 httpd.conf には他には何も追記していません。他にも何処か設定する項目が有るのでしょうか、アドバイスを頂ければ幸いです。 ユーザ hoge は、ディレクトリ public_html を作成して、index.html は置いてあります。 # hogehoge.jp は架空のドメインで、取得したドメインではありません。

  • 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勉強中の初心者です。 よろしくお願いします。

  • 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
  • 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の再起動は記述を変更するたびに行っています。 同じような事をしたことのあるかた、記述例などを教えて頂けるとありがたです。 よろしくお願いします。

  • Apacheを複数のhttpd.confを用いてる場合の再起動

    Apacheを複数のhttpd.confファイルを用いて運用している場合、 個々のhttpd.confを指定してのApache再起動は可能なのでしょうか? 試しに、httpd_1.confとhttpd_2.confを用いて実施してみましたけど、 エラーになってしまいました。 手順を踏まえての詳細を以下に示します。 1./usr/local/apache2/bin/apachectl -f /usr/local/apache2/conf/httpd_1.conf コマンドでApacheを起動。 2./usr/local/apache2/bin/apachectl -f /usr/local/apache2/conf/httpd_2.conf コマンドでApacheを起動。 3.その後Apacheを停止したらプロセスが残ってしまいました。

  • Apacheのカスタムログ記録障害について

    はじめまして。現在、以下の環境でホスティングサーバを運用しております。 稼働開始から半年ほど問題なく動いていたのですが、各バーチャルドメインのWebのアクセスログが記録されないという状態になってしまいました。アクセスすると、ファイルのタイムスタンプは最終アクセス日時に更新されるのですが、中身に書き込まれない状態です。 OS:RedHat EnterPrise Linux 4 ES 6.1 Kernel:kernel-2.6.9-55.EL WebServer:Apache(httpd-2.0.52-32.ent) 管理ソフト:HDE Controller4 ISP Edition ◎Apacheの設定ファイル ■/etc/httpd/conf/httpd.confの一部 Include vhosts/*.conf ◎VirtualDomain設定ファイル ■/etc/httpd/vhost/directory_hogehoge.jp.conf <Directory "/home/lcvirtualdomain/hogehoge.jp/htdocs/"> Options -Includes -ExecCGI #LCControlDomain "hogehoge.jp" #AuthName "" #AuthType Basic #AuthUserFile "/home/lcvirtualdomain/hogehoge.jp/htdocs/.htpasswd" #Require valid-user </Directory> ■/etc/httpd/vhost/virtual_hogehoge.jp.conf <VirtualHost *:80> UserDir disabled ServerName "hogehoge.jp" ServerAdmin "webmaster@hogehoge.jp" #LCControlDomain "hogehoge.jp" ScriptAlias /cgi-bin/ /home/lcvirtualdomain/hogehoge.jp/htdocs/cgi-bin/ AliasMatch ^/~([^/]+)/(.*) /home/lcvirtualdomain/hogehoge.jp/users/$1/public_html/$2 ServerAlias www.hogehoge.jp DocumentRoot "/home/lcvirtualdomain/hogehoge.jp/htdocs/" CustomLog /home/lcvirtualdomain/hogehoge.jp/logs/access.log combined env=!imgfile ErrorLog /home/lcvirtualdomain/hogehoge.jp/logs/error.log Hostnamelookups "on" </VirtualHost> ドメインは「hogehoge.jp」と架空のものに書き換えております。 ホスティング管理ソフト(HDE Controller)のメーカーとやり取りしていたのですが、最終的に「apacheの問題と思われる」との回答で終わってしまい、困っています。 何か考えられる、原因はないでしょうか。 足りない情報がありましたら、追って補足いたします。 よろしくお願いいたします。