Apache関連 Part11
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2008/09/30(火) 08:11:00http://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:180003名無しさん@お腹いっぱい。
2008/09/30(火) 22:57:590004名無しさん@お腹いっぱい。
2008/10/02(木) 08:39:06乙
0005名無しさん@お腹いっぱい。
2008/10/07(火) 20:19:39Apache2.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/usr/local/apache2/logs/suexec_log に何かでてないの?
00075
2008/10/07(火) 22:52:34suexec -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:310011名無しさん@お腹いっぱい。
2008/10/07(火) 23:34:45> SuexecUserGroup
おお、これかw
http://httpd.apache.org/docs/2.2/suexec.html#usage
>>5
>>8 は忘れていいw
00125
2008/10/07(火) 23:45:49まーさーにー、これだ!
というか、documentはスミからスミまで読みますスミマセンでした。
もうできなくてできなくて、仮想サーバを立ち上げてやろうかとか考えてました。
00135
2008/10/08(水) 10:07:14できました!
まぁお約束のdirectory is writable by othersが出て、一瞬なんでよ?と
思いましたが、そりゃOtherが触れたらsuexec意味ねーじゃんと言うことで
755にして解決です。
ありがとうございました。
0014名無しさん@お腹いっぱい。
2008/10/08(水) 21:37:29jpgはミラーサーバーへ飛ばして、xjpgはサーバー内のjpgを表示したいのですが、
RewriteRule ^(.+)\.xjpg$ /images/$1.jpg [L]
RewriteRule ^(.+)\.jpg$ http://www.mirror.xxx/images/$1.jpg
とやったら2行目まで処理されました。
[L]て、それ以上書き換えルールを適用しないおまじないじゃないんでしょうか。
xjpgはミラーになかったときに突っ返えされたやつなんで無限リダイレクト・・・
0015名無しさん@お腹いっぱい。
2008/10/09(木) 12:36:28使わないから曖昧な知識なんだけど、リクエストされたURLパスと物理的な
実ファイルを紐付ける前に、リクエストのパスを書き換えるモジュールだよね?
ってことは、
xjpgでのリクエストはRewriteRule ^(.+)\.xjpg$ /images/$1.jpgに変換して
リクエストを処理。
変換されたリクエストはRewriteRule ^(.+)\.jpg$の条件にマッチするので
ミラーにないからxjpg突っ返されて無限リダイレクト。
1回のリクエストで2行目まで処理されてるんじゃなくて
都合2回分のリクエストが発生したため、2行目まで処理されてるって
ことになってるんじゃないかと素人は思う。
001614
2008/10/09(木) 19:36:52なのに評価が止まらないので質問しました。
でも自己解決したので報告します。
.htaccessでやってたからダメでした。httpd.confに移したらOK。
.htaccessだと、[L]でとめた後にまたディレクトリを読み込んで評価しちゃうんですね。
0017名無しさん@お腹いっぱい。
2008/10/09(木) 23:50:41この質問だれか答えてください
0018名無しさん@お腹いっぱい。
2008/10/10(金) 18:40:38logresolve は、どのDNSを使っているのか?
設定するファイルも無いようなんだが。
そもそも、パソコンが使うDNSとは
一意に決まっているのか?
それはどこに設定されているの?
0019名無しさん@お腹いっぱい。
2008/10/10(金) 22:31:580020名無しさん@お腹いっぱい。
2008/10/11(土) 00:23:450021名無しさん@お腹いっぱい。
2008/10/13(月) 18:30:35Allowoverride で Fileinfoを許可したいが、
CGIやPHP、SSI
を使用させたくない、というポリシーです。
phpに関してモジュールの使用を禁止するのは
モジュール自体をoffにするしか事実上不可、であってるでしょうか?
またCGI,SSIについては
optionsを禁止しておけば、Fileinfoが使えても使用できない、
ということであってるでしょうか?
0022名無しさん@お腹いっぱい。
2008/10/13(月) 20:37:44この質問における
>CGIやPHP、SSI
CGIとPHPの違いは何?
http://httpd.apache.org/docs/2.2/ja/howto/htaccess.html
http://httpd.apache.org/docs/2.2/ja/mod/core.html#allowoverride
http://httpd.apache.org/docs/2.2/ja/mod/core.html#options
ここらへんかなぁ
おまけw
http://ja.wikipedia.org/wiki/Common_Gateway_Interface
0023名無しさん@お腹いっぱい。
2008/10/14(火) 01:44:25wとかつけてるが、全然お前理解できてないだろw
Common_Gateway_Interface って覚えたてで使いたいのか?
0024名無しさん@お腹いっぱい。
2008/10/14(火) 10:26:560025名無しさん@お腹いっぱい。
2008/10/14(火) 22:38:190026名無しさん@お腹いっぱい。
2008/10/29(水) 03:09:26現在、Nameベースのバーチャルホスト設定して
異なるドメインのサイトを2つ運用しているのですが、
今度ここにもう一つサイトを追加することになりました。
そこで質問なのですが、Apacheを再起動せずに
バーチャルホストの設定を追加することは可能でしょうか?
目的は運用中のサイトを停止させずに新規サイトを追加することなので、
バーチャルホスト以外のやり方があるならばそれでも構いません。
何か良い方法があればご教示ください。
0027名無しさん@お腹いっぱい。
2008/10/29(水) 07:20:000028名無しさん@お腹いっぱい。
2008/10/29(水) 10:54:01つーかさ、止めちゃだめなような作りにするなよ。
障害で落ちることもあるんだから。
002926
2008/10/29(水) 15:21:35どうもありがとうございます。
やはりgracefulが最善でしょうか。
さすがに別プロセスであげると管理がややこしくなるので
深夜などを狙ってgracefulで再起動することにします。
ありがとうございました。
0030名無しさん@お腹いっぱい。
2008/10/29(水) 19:46:26一瞬でも止められないサイトなら鯖を二重化するなりしとけw
0031名無しさん@お腹いっぱい。
2008/11/01(土) 00:36:09ただのgracefulよりすっきりする
ただし忙しいサーバーだとstartのときに、bind出来ないって怒られることがある(バグ)
0032名無しさん@お腹いっぱい。
2008/11/01(土) 00:43:28初心者ほどやりたがるから困る
0033名無しさん@お腹いっぱい。
2008/11/01(土) 08:42:390034名無しさん@お腹いっぱい。
2008/11/01(土) 09:14:270035名無しさん@お腹いっぱい。
2008/11/01(土) 19:41:47ちょとまて、bind出来ないってそれマジか?
OSは?Apacheのバージョンは?
0036名無しさん@お腹いっぱい。
2008/11/01(土) 20:48:14./configure --enable-rewrite=shared --enable-ssl=shared --prefix=/opt/www
するとエラーが出てきました。
configure: error: ... Error, SSL/TLS libraries were missing or unusable
解決策があれば教えてほしいです。
003735
2008/11/01(土) 21:12:52graceful-stop → start ね
タイミングによってはなるかもだね
graceful で起きるのかと勘違いしたw
0038名無しさん@お腹いっぱい。
2008/11/02(日) 00:25:50書いてあるとおりでしょ。
0039名無しさん@お腹いっぱい。
2008/11/02(日) 08:47:51ライブラリが見つけれないのかなと思って、/etc/ld.so.confにsslの
ライブラリがある場所を追記したんですけど、余り関係ないですか?
どなたかヒントをお願いします。
0040名無しさん@お腹いっぱい。
2008/11/02(日) 11:02:58openssl関連が入ってないんじゃないの?
たとえば・・・
http://oku.edu.mie-u.ac.jp/~okumura/linux/?Apache%202#m73dd07e
OSはなに?
linuxならわざわざソースから入れないでパッケージ使えば楽ジャン。
apt使用できるなら依存関係も含めてインストールしてくれるし( ・∀・)イイ!!
0041名無しさん@お腹いっぱい。
2008/11/02(日) 11:53:040042名無しさん@お腹いっぱい。
2008/11/02(日) 16:11:54openssl-develが入っていなかったぽいです。
インストール後、configureはできたんですけど、
今度はmakeで引っかかってしまいました・・・。
一旦ソースからのインストールはあきらめて、aptでやり直してみます。
アドバイスどもでした。
0043名無しさん@お腹いっぱい。
2008/11/04(火) 04:59:52http://pc11.2ch.net/test/read.cgi/tech/1100616350/625
0044名無しさん@お腹いっぱい。
2008/11/09(日) 06:00:44元のエラードキュメントを変更する方法はないでしょうか?
ドキュメントルート以下にエラードキュメントを置けず、
またhttp://でのURL指定も避けたいためです。
標準で表示されるエラードキュメント(たとえば、404 not foundとか)
は.htmlでどこかにデータがあるわけではなく、
apacheのソース自体に書き込まれてるのでしょうか?
0045名無しさん@お腹いっぱい。
2008/11/09(日) 09:36:140046名無しさん@お腹いっぱい。
2008/11/09(日) 23:28:470047名無しさん@お腹いっぱい。
2008/11/10(月) 00:55:14Apache 2.xのサンプル設定にある多言語表示用のErrorDocumentと
その前に置かれているAlias /error/を見れば解決方法はわかるよな?
0048名無しさん@お腹いっぱい。
2008/11/10(月) 02:14:19置けないという状況がまず理解できない
004944
2008/11/10(月) 19:23:37Aalias /error/ をコメントアウトしても
表示変わりません、
ErrorDocument 404 /error/HTTP_NOT_FOUND.html.var
自体をコメントアウトしても
表示されるエラーって
ソース以外どこに書いてあるのを読み込んできているんでしょうか。
0050名無しさん@お腹いっぱい。
2008/11/10(月) 20:12:31なのに何が問題なんだ?
訊きたいことをちゃんとまとめてから来るんだね
0051名無しさん@お腹いっぱい。
2008/11/10(月) 20:18:160052名無しさん@お腹いっぱい。
2008/11/10(月) 20:47:320053名無しさん@お腹いっぱい。
2008/11/10(月) 22:27:09ってエスパーしてみる
正確にはリクエストのサイズとか
いくつか条件有ったと思うけど
0054名無しさん@お腹いっぱい。
2008/11/10(月) 23:23:45http://support.microsoft.com/?scid=kb%3Bja%3B294807&x=19&y=7
0055名無しさん@お腹いっぱい。
2008/11/10(月) 23:35:11久々に笑える仕様だなあ。
0056名無しさん@お腹いっぱい。
2008/11/11(火) 01:07:49そっけなく表示される短文のエラーメッセージを
わかりやすくしようと考えたんだろうね
Internet Explorerはそういういらぬお節介が多い
時としてContent-Typeを無視するのも同じことかと
ボクが考えた親切設計〜☆とかいうのはよく吟味しないと
迷惑をかけたりヘタすりゃ脆弱性になったりもする
サービス精神が豊かすぎるつーか余計なことが大好きな人は
そういうことになってないか確認を忘れずに
0057名無しさん@お腹いっぱい。
2008/11/11(火) 01:18:140058名無しさん@お腹いっぱい。
2008/11/11(火) 14:27:03そのまま見せるものは皆無なわけだし、
IE の仕様が超絶的におかしいというわけでもないよ。
メーラーだって、550 relay denied というエラーで蹴られたとしても、
そのエラーは画面に出さずに「送れませんでした」とダイアログを
出すようなものが多いでしょ。それと同じ。
エラーページのサイズで挙動を変えるというのは変態だが。
0059名無しさん@お腹いっぱい。
2008/11/17(月) 21:32:33バーチャルホストで10サイトほど運営しています
通常のアクセスログをサイト毎に存在します
こういう場合はサイト毎にWebalizeでも使うのでしょうか
0060名無しさん@お腹いっぱい。
2008/11/18(火) 14:14:42例えば単純な大データ転送より細かなCGIプログラム処理の方がサーバ&環境にとって負荷が高いって事も多いし、
まず何を目的に負荷の調査をしたいのかがわからないとね。
0061名無しさん@お腹いっぱい。
2008/11/18(火) 14:23:15単にアクセス数を数えたいだけ?
006259
2008/11/18(火) 15:40:01サイト毎のCPU的な負荷を知りたいです。
サイト毎の load average のような。
そういったツールってありますかね?
0063名無しさん@お腹いっぱい。
2008/11/18(火) 15:42:280064名無しさん@お腹いっぱい。
2008/11/18(火) 15:47:13複数のサイトで共有して使われてるものもあるから、
そういう負荷状況を取得するのは無理。
どうしてもそういうのが欲しいのなら、バーチャルホストごとに
別プロセスで立ち上げること。名前ベースなら無理だけど。
006559
2008/11/18(火) 15:59:38なるほど、そう考えるとそうですね
ありがとうございます
ただ、一つだけ合点がいかない部分がありますので聞かせてください
レンタル鯖の xreaって、サイト毎に load average っぽいのが見られるじゃないですか
1以上が長い時間続くとサーバー停止みたいな
あれって apache + virtualhost で 名前ベースだと思うのですが、
どのように実現しているんですかね
0066名無しさん@お腹いっぱい。
2008/11/18(火) 16:02:51どこで見れんの?
0067名無しさん@お腹いっぱい。
2008/11/18(火) 16:52:59CGIWRAP使ってなんかしてるんだと思うけど俺はCGIWRAPはよくわからん。
それとアクセス数と転送良だな。
0068名無しさん@お腹いっぱい。
2008/11/18(火) 17:43:30自分もCGIの多いサイトを運営してるけどこれ一本でOK的なツールは知らない、(誰か知ってたらおしえて)
でどうしてるかというと
MRTG(snmp)でCPUとトラフィックのロードアベレージを取っていて気になる時間帯のログを分析して割り出してる
効率の良い方法とは言えないけどこれで負荷が高いサイトやCGIは有る程度特定できる。
0069名無しさん@お腹いっぱい。
2008/11/19(水) 00:04:58なんか記録撮るプログラム挟めば行けそう
007059
2008/11/19(水) 12:14:47ありがとん
0071名無しさん@お腹いっぱい。
2008/11/21(金) 03:38:03何となく制限とか簡単そうな気がする
0072名無しさん@お腹いっぱい。
2008/11/21(金) 05:18:430073名無しさん@お腹いっぱい。
2008/12/03(水) 09:06:54PHP/CGIラッパーつかってるなら実行権限はapacheやnobodyじゃなくてユーザーなわけでしょ?
なら普通に60秒ごとにでもpsのpcpuを監視するスクリプトでも書けば実現できるんじゃない?
0074名無しさん@お腹いっぱい。
2008/12/07(日) 00:19:580075名無しさん@お腹いっぱい。
2008/12/07(日) 17:31:36アルファだけあってまだまだ変なとこもあるけど
安定した追加機能もあったりする
0076名無しさん@お腹いっぱい。
2008/12/09(火) 09:51:20海外に、web server の履歴(OSやらServer) を調べられるサイトが
あったと記憶しているんだが、名前が分らない。
どなたか教えてくださいませ。
0077名無しさん@お腹いっぱい。
2008/12/09(火) 10:28:070078名無しさん@お腹いっぱい。
2008/12/14(日) 16:33:11kill -HUP をしているのですが、
ブラウザからCGIなどの処理中の場合、
CGIの処理が中断され終了してしまうことを確認しました。
これを回避する方法ってないでしょうか?
0079名無しさん@お腹いっぱい。
2008/12/14(日) 18:08:180080名無しさん@お腹いっぱい。
2008/12/14(日) 22:24:490081名無しさん@お腹いっぱい。
2008/12/15(月) 15:53:150082名無しさん@お腹いっぱい。
2008/12/15(月) 22:10:59mod_rewriteをいじってもうまくいきません。
セキュリティの対策として行なおうとしてますが、
一般的に、こうしたことはする必要ないのでしょうか?
0083名無しさん@お腹いっぱい。
2008/12/15(月) 22:24:08mod_rewriteでもmod_setenvifでも出来るよ、多分。
0085名無しさん@お腹いっぱい。
2008/12/15(月) 22:35:00てか弾くんじゃなくてHTTPSのほうにリダイレクトすりゃ親切だけどな
0086名無しさん@お腹いっぱい。
2008/12/15(月) 22:40:09リダイレクトすりゃ親切ってのは同意。
0087名無しさん@お腹いっぱい。
2008/12/16(火) 21:57:24--enable-auth-dbm
をつけてconfigureすると、環境によってデフォルトがSDBM、NDBM、GDBMなど 使える
DBMのうちのどれかになるそうです。
http://httpd.apache.org/docs/2.0/ja/mod/mod_auth_dbm.html#authdbmtype
デフォルトを、たとえばGDBMにしたい、という場合はconfigureでどういうオプションをつける
のでしょうか?
AuthDBMType GDBM
とするとGDBMが使えるのは知っています。
「デフォルトをGDBMにしたい」というのはただの興味で、自分の環境のCentOS5.2だとSDBMが
デフォルトになったので、なんでかな?という理由です。
0088名無しさん@お腹いっぱい。
2008/12/17(水) 01:00:36つ ttp://httpd.apache.org/docs/2.0/ja/programs/configure.html#packageopt
0089名無しさん@お腹いっぱい。
2008/12/17(水) 07:50:29Aに来たアクセスをそのまま
Bへ送る、みたいなことってできないでしょうか?
自サイトにアクセスがあったらWEBプログラムで
ローカルのデータベースに書き込む仕組みのため
IP変更で一時でも情報が分散するのが困るためです。
メールサーバー(postfix)はクリアできたのですが、
ウェブサーバー(apache)は方法がさっぱり分かりません
0090名無しさん@お腹いっぱい。
2008/12/17(水) 08:02:20メールは中継すればいいけど、Webはなぁ・・・w
0091名無しさん@お腹いっぱい。
2008/12/17(水) 08:07:30BにAのIPアドレスを、ARPに反応しないような方法で割り当てればいい。
0092名無しさん@お腹いっぱい。
2008/12/17(水) 08:16:07古いアドレスの方は完全に止めてしまえば、そっちにアクセスされてデータがおかしくなることもない。
無理にシームレス化させなくて、割り切った方がいんでは?
0093名無しさん@お腹いっぱい。
2008/12/17(水) 13:47:11要はグローバル-プライベートじゃなくてグローバル-グローバルの NAT。
0094名無しさん@お腹いっぱい。
2008/12/17(水) 14:53:19当面サーバAを止めずにアクセスをリダイレクトするのは?
サーバBへはhttp://1111.2222.3333.4444/
って感じでIPアドレスベースで。
その程度のライトな対応はよくやる。
0095名無しさん@お腹いっぱい。
2008/12/17(水) 20:57:42旧IPでPROXYとかどーよ
0097名無しさん@お腹いっぱい。
2008/12/17(水) 22:07:21./configure --help
と同じ内容ですよね。
で、そこのどこに「デフォルトDBMを指定するには」があるんでしょ?
関係ありそうなのは
--enable-auth-dbm
--with-gdbm[=path]
--with-ndbm[=path]
--with-berkeley-db[=path]
だけかと思うのだけど。
0098名無しさん@お腹いっぱい。
2009/01/07(水) 17:02:56VMwareで自動起動したtomcatがstopできないんだけど…
0099名無しさん@お腹いっぱい。
2009/01/07(水) 19:40:16どういうこと?
0100名無しさん@お腹いっぱい。
2009/01/08(木) 09:28:50chkconfigで2〜5がONになってて起動中のTOMCATを、/etc/init.d/tomcat stopで停めようとすると、サーバ(VMware?)がハングする
でもってchkconfigでtomcatの2〜5までOFFにすると、/etc/init.d/tomcat stopで停まる
VMwareが他の人のPCに入ってるので、その人が来るまでまだしばらく各種バージョンは確認できないんですけど。
tomcatが悪いのか、mod_jkが悪いのか、JAVAが問題なのか、はたまたVMの問題か、原因がよく判らないんですよねぇ…
0101名無しさん@お腹いっぱい。
2009/01/09(金) 22:48:04罠として仕掛けるには面白いから、どうしてサーバがハングするのか突き止めてくれw
自分の知識ではその状況が作り出せない・・・
■ このスレッドは過去ログ倉庫に格納されています