トップページunix
982コメント316KB

Apache関連 Part11

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2008/09/30(火) 08:11:00
HTTP ServerのApacheに関する話題を扱うスレッドです。
http://httpd.apache.org/

●インストール済みApacheの詳細情報の調べ方
httpd -h 簡易ヘルプ
httpd -v バージョン情報
httpd -V コンパイル条件など詳細な情報
httpd -l 静的リンクされたモジュール一覧
httpd -M 現在の設定ファイルで読み込まれるモジュール(2.2以降)

●公式マニュアル
http://httpd.apache.org/docs/1.3/ Apache 1.3
http://httpd.apache.org/docs/2.0/ Apache 2.0
http://httpd.apache.org/docs/2.2/ Apache 2.2

●ディレクティブ一覧
http://httpd.apache.org/docs/1.3/mod/directives.html
http://httpd.apache.org/docs/2.0/mod/quickreference.html
http://httpd.apache.org/docs/2.2/mod/quickreference.html

前スレッド
Apache関連 Part10
http://pc11.2ch.net/test/read.cgi/unix/1179627714/
0002名無しさん@お腹いっぱい。2008/09/30(火) 08:12:18
立ててみた @linux
0003名無しさん@お腹いっぱい。2008/09/30(火) 22:57:59
@linux???????
0004名無しさん@お腹いっぱい。2008/10/02(木) 08:39:06
>>1
0005名無しさん@お腹いっぱい。2008/10/07(火) 20:19:39
自宅鯖の質問スレで質問した際、こちらのほうが適切な回答がとのことでしたので質問させてください。

Apache2.2.8でVirtualHost+SuEXECな環境を作りたいのです。
Apacheはuserもgroupもnobodyで動かしています。
そのためMovableTypeでHTML生成すると、ファイルのオーナーがnobodyになってしまい
これはSuEXECなるものを使えってことなのか?と試しているんですが、どうやってもnobodyでファイルが生成されてしまうのです。
/home/[ユーザ名]/public_htmlがVirtualHost個々のDocumentRootです。

./configure --prefix=/usr/local/apache2 \
--enable-so \
--enable-rule=SHARED_CORE \
--enable-rewrite \
--disable-dav \
--enable-cgi \
--with-included-apr \
--with-perl=/usr/local/bin/perl5.8.8 \
--with-port=80 \
--enable-suexec \
--with-suexec-caller=nobody \
--with-suexec-docroot=/home \
--with-suexec-userdir=public_html \
--with-suexec-bin=/usr/local/apache2/bin/suexec \
--with-suexec-logfile=/usr/local/apache2/logs/suexec_log \
--with-suexec-uidmin=1000 \
--with-suexec-gidmin=1000

configureは上記のようにしていますが、httpd_vhostとかに何かおまじないを書く必要があるんでしょうか?
もしくは他の方法でユーザ自身がオーナーになるようにできるんでしょうか?
初心者的質問で恐縮ですが、よろしくお願いします。
0006名無しさん@お腹いっぱい。2008/10/07(火) 21:49:42
>>5
/usr/local/apache2/logs/suexec_log に何かでてないの?
000752008/10/07(火) 22:52:34
ログには何も書き出されないです。
suexec -Vではconfigureの値がでてきているので
入っているのは確認できているんですが・・・

0008名無しさん@お腹いっぱい。2008/10/07(火) 23:09:55
ふむ。
あれ?
> /home/[ユーザ名]/public_htmlがVirtualHost個々のDocumentRootです。
これってちょっと特殊な要件だね。すまん、見逃してた。

<VirtualHost *:80>
DocumentRoot "/home/foo/public_html"
ServerName foo.example.com
</VirtualHost>

って感じ?だとすると、たぶん SuEXEC としては UserDir としての
アクセスじゃないから動かないと思う。(確かめたわけじゃないが、
かなり厳密に動作環境をチェックしてたはずなので)

おおもとのホスト名が www.example.com だとして、
まず http://www.example.com/~foo/ で SuEXEC での動作を確認し
て、http://foo.example.com/http://www.example.com/~foo/
にリダイレクトなり ProxyPass & ProxyPassReverse なりしてやる
のがいいんでない?

注意点としては・・・
・本当にできるかどうかわからんw
・規模が大きくなるとパフォーマンスでないかもしれん
・ProxyPass つかうと VirtualHost側に想定するログが出ないかも
(全部アクセス元が127.0.0.1とか)
・同様にIPアドレスベースでアクセス制御考えてる場合は破綻するかも
などなど。まぁがんがれ。
0009名無しさん@お腹いっぱい。2008/10/07(火) 23:12:46
補足

>>7
> ログには何も書き出されないです。

ログが出ないことからしても、SuEXECなアクセスとして扱われてな
い可能性が高い気がするなぁ。マニュアルに SuEXEC としてアクセ
スするための条件とか書いてない?
0010名無しさん@お腹いっぱい。2008/10/07(火) 23:24:31
SuexecUserGroup
■ このスレッドは過去ログ倉庫に格納されています