Apache関連 Part8
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2006/01/04(水) 16:46:23http://httpd.apache.org/
HTTP Serverの最新Versionは
Apache/2.2.0
Apache/2.0.55
Apache/1.3.31
●まずはマニュアル嫁。
http://httpd.apache.org/docs/ Apache 1.3
http://httpd.apache.org/docs/2.0/ Apache 2.0
http://httpd.apache.org/docs/2.2/ Apache 2.2
●「自分」でバージョンぐらい調べるれ。
httpd -h
httpd -V コンパイル条件など詳細な情報
Apache関連 Part7
http://pc8.2ch.net/test/read.cgi/unix/1108649446/
Apache関連 Part6
http://pc5.2ch.net/test/read.cgi/unix/1084829611/
0127名無しさん@お腹いっぱい。
2006/01/30(月) 17:40:020128名無しさん@お腹いっぱい。
2006/01/30(月) 17:43:32なんでそんなことしたいの?
0129名無しさん@お腹いっぱい。
2006/01/30(月) 18:08:19ありがとうございます。
>>128
ちょっと必要だったんですよね。
0130名無しさん@お腹いっぱい。
2006/01/30(月) 19:40:36その「ちょっと」が知りたいんだと思うんだが(俺も知りたい)
MaxRequestsPerChildでは駄目なのかとか、何らかの設定変更を
行った後やApacheが死んでる時にではなく、"定期的"に再起動を
掛けたいという理由って結構珍しいのではないかな。
0131名無しさん@お腹いっぱい。
2006/01/30(月) 23:52:360132名無しさん@お腹いっぱい。
2006/01/31(火) 00:01:100133名無しさん@お腹いっぱい。
2006/01/31(火) 00:41:180134名無しさん@お腹いっぱい。
2006/01/31(火) 00:53:11MaxRequestsPerChildでは駄目なの?
0135名無しさん@お腹いっぱい。
2006/01/31(火) 02:35:34あと、スクリプト書くのが面倒で、/usr/local/etc/rc.d/apache2.sh restart
スクリプト動作用に複数起動させてて、ついでに ssl もオープンしてて
3個もシグナル送るのめんどいじゃん・・・
0136名無しさん@お腹いっぱい。
2006/01/31(火) 03:33:240137名無しさん@お腹いっぱい。
2006/01/31(火) 15:36:03はっきり言って意味無いと思うんだが。。
俺が管理してる奴だと、3,4ヶ月動かしっぱなしでも問題ないし。
gracefulは再起動じゃないよね。
>>136
apacheに限れば、rotatelogsかな。
俺はmv & graceful派だが。
0138名無しさん@お腹いっぱい。
2006/01/31(火) 23:12:36VirtualServer 使ってて、ログファイルも10個ぐらいあるんじゃー
logrotate って調べてみたけど、時間指定で10個いっぺんに切れるのかな?
切り替えする時に、シグナルを送るのは一回にしたいなぁ・・とか
rotatelogs もついでに調べてみたけど別プロセス動くのかな、これ
うざー
やっぱり mv & graceful ですな
0139名無しさん@お腹いっぱい。
2006/02/01(水) 02:39:07logrotateはいろんなログをまとめてやるのに便利なだけで、
動作は自分で好きに書く。
0140名無しさん@お腹いっぱい。
2006/02/01(水) 06:52:570141名無しさん@お腹いっぱい。
2006/02/01(水) 07:44:14Linuxってそれやってなかったっけ?
AcceptFilterでもいいのかな?
0142名無しさん@お腹いっぱい。
2006/02/01(水) 11:06:17tuxとか?
# 前置きなしに「そろそろ〜?」は
# ニャ顔風でいやらしさ満載だ(w
0143名無しさん@お腹いっぱい。
2006/02/01(水) 16:00:210144名無しさん@お腹いっぱい。
2006/02/01(水) 16:33:58OS独自のhttpdなくても大丈夫なんじゃないか?
0145名無しさん@お腹いっぱい。
2006/02/02(木) 04:08:21複数に分かれたのでしょうか?新しい構成を解説してあるサイトか何かあれば教えてください。
0146名無しさん@お腹いっぱい。
2006/02/02(木) 11:27:17最後の方に各confの説明がある。
0147名無しさん@お腹いっぱい。
2006/02/02(木) 18:38:31二つ目の接続の方が、読み込まれずタイムアウトしてしまいます。つまり、画像の場合、×が表示されてしまいます。
×の表示が出た画像の上で、右クリックをして画像の表示を選択すると、読み込まれます。
operaやfirefoxでも同じ現象が出ます。また他のパソコンでも同様になることを確認したので、
問題はサーバの方にあると思われるのですが、どこを調べたらよいのかわかりません。
他の接続、例えばsshやpop3などは2つ以上コネクションを張れるので、
apacheの設定に問題があるのではないかと疑っているのですが、具体的にどの設定をいじればよいのかわかりません。
httpd.confの設定はほぼデフォルトのままで、mod_limitipconnは使用していません。
osはfedora core4です。apache以外の可能性も含めて助言いただければ幸いです。
0148147
2006/02/02(木) 18:45:120149147
2006/02/02(木) 19:00:32スレッドを開始します
example.comが見つかりました
example.com(xxx.xxx.xxx.xxx):80にconnect失敗しました
ソケットエラー
5 秒待機します
のようなエラーが出ます。必要な情報が不足しているかもしれませんが、よろしくお願いします。
0150名無しさん@お腹いっぱい。
2006/02/02(木) 19:04:42君の鯖じゃないのか?
0151147
2006/02/02(木) 19:54:560152名無しさん@お腹いっぱい。
2006/02/02(木) 20:00:39何が原因だったの?
0153名無しさん@お腹いっぱい。
2006/02/03(金) 01:22:07inetdで呼び出されるのがよくてdaemonがだめな理由がよくわからんが、
ローカルでテストしたいだけならhttpd.confの219行目を
Listen 80 -> Listen 127.0.0.1:80
が一番簡単なのでは?
0154名無しさん@お腹いっぱい。
2006/02/03(金) 09:52:35それだとdaemonと変わらない。
セキュリティーの問題じゃなく、ローカルマシンはクライアント用だから、
不要なプロセスを止めて軽くしたいのが目的らしい。
で、apache-1.3系に戻すことで解決したらしいが。
0155名無しさん@お腹いっぱい。
2006/02/03(金) 12:44:34俺の常用マシンは sshdも sendmailも inetd起動だよ。
apacheはなんで inetd起動、捨てたんだろうね。
また、inetd起動できるようになるといいね。
0156名無しさん@お腹いっぱい。
2006/02/03(金) 14:57:580157名無しさん@お腹いっぱい。
2006/02/03(金) 15:03:330158名無しさん@お腹いっぱい。
2006/02/03(金) 15:16:03inetdでメモリに優しいことは需要としては極少数派で、開発リソースをかける意味が無いから。
0159名無しさん@お腹いっぱい。
2006/02/03(金) 15:27:36sshd を inetd 起動にすると接続ごとに鍵作り直すから
かえってつらくない?
0160名無しさん@お腹いっぱい。
2006/02/03(金) 15:29:430161名無しさん@お腹いっぱい。
2006/02/03(金) 16:03:25なんだ。それだけの理由なのか。
じゃあ、inetdが使えるならそれはそれで意味があることだよね。
潜在需要は結構あるはず。
0162名無しさん@お腹いっぱい。
2006/02/03(金) 16:17:390163名無しさん@お腹いっぱい。
2006/02/03(金) 16:21:03"結構"と言えるだけあれば、サポートが外されてないと思う。
コンパクトなhttpdなら少数のやり手如何でどうにでもなるけど
apahceはもうそんな規模ではないよ。
0164名無しさん@お腹いっぱい。
2006/02/03(金) 16:21:12需要ないと思うよ。
0165名無しさん@お腹いっぱい。
2006/02/03(金) 16:23:010166名無しさん@お腹いっぱい。
2006/02/03(金) 16:26:02あなたがinetd対応patchを書くか、書ける人に金だせばいいのでは?
0167名無しさん@お腹いっぱい。
2006/02/03(金) 16:33:520168名無しさん@お腹いっぱい。
2006/02/03(金) 16:51:190169名無しさん@お腹いっぱい。
2006/02/03(金) 16:56:54納得できれば、放っておいても入るんじゃないかな。
0170名無しさん@お腹いっぱい。
2006/02/03(金) 17:01:31どうしようもない。
0171名無しさん@お腹いっぱい。
2006/02/03(金) 17:08:270172名無しさん@お腹いっぱい。
2006/02/03(金) 17:20:170173名無しさん@お腹いっぱい。
2006/02/03(金) 17:25:250174名無しさん@お腹いっぱい。
2006/02/03(金) 18:01:42こんなの見付けた。
0175名無しさん@お腹いっぱい。
2006/02/03(金) 18:06:32OSがFreeBSDだからなw スレッドなんか使うと即死だ。
・HTTPリクエストをカーネル側でバッファ
それはTuxみたいな奴か?単にバックログ増やしただけだったらワロス
・コアダンプはさせないようにする
2はデフォルトでコアダンプなんかしないわけだがw
Yahoo終わったな
0176名無しさん@お腹いっぱい。
2006/02/03(金) 18:12:23FreeBSD貶してるところから見るとLinuxしか知らないらしいw
しかしYahooも最初にやる事がServer:ヘッダの抑止とは厨っぷりが知れるな
0177名無しさん@お腹いっぱい。
2006/02/03(金) 20:00:49を節約したいっていうのがあるから、積極的にヘッダを削
減します。
0178名無しさん@お腹いっぱい。
2006/02/03(金) 20:03:090179名無しさん@お腹いっぱい。
2006/02/03(金) 22:36:500180名無しさん@お腹いっぱい。
2006/02/03(金) 22:37:550181名無しさん@お腹いっぱい。
2006/02/03(金) 22:45:32「トラヒック」って・・・
F行を発音できない、「ファミコン」を「ハミコン」という老世代の方ですか?
0182名無しさん@お腹いっぱい。
2006/02/03(金) 23:03:32>>180
激同
0183名無しさん@お腹いっぱい。
2006/02/03(金) 23:10:430184名無しさん@お腹いっぱい。
2006/02/03(金) 23:15:27ハードジスクからレストアしてください。
0185名無しさん@お腹いっぱい。
2006/02/03(金) 23:35:09ネットワーク屋ではトラヒックが普通
0186名無しさん@お腹いっぱい。
2006/02/04(土) 00:10:46虎曰く、「虎ヒック…」
おあとがよろしいようで…
0187名無しさん@お腹いっぱい。
2006/02/04(土) 00:36:320188名無しさん@お腹いっぱい。
2006/02/04(土) 00:36:430189名無しさん@お腹いっぱい。
2006/02/04(土) 00:37:32変だって気が付かないからドカチンなんだよねw
0190名無しさん@お腹いっぱい。
2006/02/04(土) 01:09:31example.jp/
へのアクセスの場合に、パソコンからは example.jp/index.html を表示させ、
携帯からは example.jp/i/ へリダイレクトさせる方法は、
Apache の設定のみで可能でしょうか?
・アクセス元関係無しのリダイレクト
・携帯以外はアクセス拒否
の二つは個別で設定出来るのは確認したのですが、
自分のやりたいことはその組み合わせで実現させられるのではないかと
思っていますが、そういった組み合わせを解説しているサイトがなく、
試行錯誤しましたが、自分では解決しそうにありません。
ブログコンテンツなので、アクセス制御の CGI を間に
挟むことは避けたい希望があるので、どうにか Apache の設定のみの
手法を探しています。
ご存じの方、よろしくお願いします。
環境は Apache 1.3.34 です。
0191名無しさん@お腹いっぱい。
2006/02/04(土) 01:16:25携帯かどうかの判断ってどうやってるの?
0192名無しさん@お腹いっぱい。
2006/02/04(土) 01:23:37・携帯以外はアクセス拒否 ←SetEnvIf or BrowserMatch と Deny?
Redirectディレクティブは環境変数使えないからこの組み合わせは無理かな。
まあかなり変なやり方だけど、SetEnvIf or BrowserMatch と Deny と ErrorDocument で出来なくもないかな。
ErrorDocument 403 http://example.jp/i/
BrowserMatch ○○ phone
Deny from env=phone
まあ普通はmod_rewriteだな
0193名無しさん@お腹いっぱい。
2006/02/04(土) 02:03:37各キャリア公開の IP アドレスを使っての allow/deny です。
>>192
・アクセス元関係無しのリダイレクト ← Redirectディレクティブ?
・携帯以外はアクセス拒否 ←SetEnvIf or BrowserMatch と Deny?
BrowserMatch 以外はほぼその通りです。
やはり、変なやり方だったんですね。
もう一度 mod_rewrite のリファレンスに目を通してみます。
ありがとうございました。
0194名無しさん@お腹いっぱい。
2006/02/04(土) 02:17:46Redirect と mod_rewrite は別物だったんですね。
一から勉強し直してきます。
アドバイスありがとうございました。
0195名無しさん@お腹いっぱい。
2006/02/04(土) 19:47:17どっちがお勧め?
公式のアナウンスではどっちもstableになってるし
何を基準にバージョンを変えればいいのか分からんです
0196名無しさん@お腹いっぱい。
2006/02/04(土) 20:32:41だた、両者はモジュールの互換性はバイナリレベルではない
再コンパイルが必要
この意味が分からないなら2.0.55のほうがいいかもしれない
0197名無しさん@お腹いっぱい。
2006/02/05(日) 02:30:12apacheをrootで起動する必要があり、ぐぐってもこれを理由に使用を躊躇してる
人ばかり。
リスクが上るのは分かるんですが、
実際apacheをrootで起動するのってどれくらい危険度が上るものでしょうか?
apacheのセキュリティホールを常に埋めるように注意しておけば大丈夫?
あと、このmod_suid2を改造したmod_ruidというのがあるみたいなんですが、
ぐぐっても情報は0に近いです(日本語意外でさえ)
識者の方、コメントきぼんぬ
0198名無しさん@お腹いっぱい。
2006/02/05(日) 02:38:45/etc/shadowを外部から読み出せる可能性が出てきたりするわけだけど
それでも平気なら。
0199名無しさん@お腹いっぱい。
2006/02/05(日) 03:09:59なんか違くない? コンテンツ取得時には setuid 済みです。
>>197
setuid を実行するまでの間、root 権限を持っていることが
問題なわけでしょ。例えばだけど、HTTP ヘッダを解釈して
apache が色々な判定処理をするわけじゃん。文字列の処理ってのは
バグでバッファオーバーフローとか起こす可能性が高いわけよ。
もっと具体的な例で言うと Host: ヘッダの解釈にバグがあったと
しよう。これに exec /bin/sh ができるように悪意のあるコードを
押し込むと、そのまま簡易 telnet に早変わりですよと(w
これらの問題は、同時に使用するモジュールの影響も受けるので、
単に apache のみを最新にしてれば大丈夫ってわけでもない。
0200199
2006/02/05(日) 13:02:42いきなり root で /bin/sh が使えるということです。
# バッファオーバーフローなんかで /bin/sh を起動されて
# 侵入されるところまでは、別に root で動作してなくてもあり得ることだ罠。
0201名無しさん@お腹いっぱい。
2006/02/07(火) 03:49:230202名無しさん@お腹いっぱい。
2006/02/07(火) 08:13:490203名無しさん@お腹いっぱい。
2006/02/09(木) 02:49:590204名無しさん@お腹いっぱい。
2006/02/09(木) 09:29:470205名無しさん@お腹いっぱい。
2006/02/09(木) 09:57:310206名無しさん@お腹いっぱい。
2006/02/09(木) 09:59:130207名無しさん@お腹いっぱい。
2006/02/09(木) 10:33:040208名無しさん@お腹いっぱい。
2006/02/09(木) 11:26:170209名無しさん@お腹いっぱい。
2006/02/09(木) 15:58:000210名無しさん@お腹いっぱい。
2006/02/09(木) 18:23:160211名無しさん@お腹いっぱい。
2006/02/09(木) 19:34:240212名無しさん@お腹いっぱい。
2006/02/09(木) 20:52:03./ ,' 3 `ヽーっ
l ⊃ ⌒_つ
`'ー---‐'''''"
荒巻スカルチノフ
0213名無しさん@お腹いっぱい。
2006/02/10(金) 01:43:03これを禁止する方法ないでしょうか?
例:
ttp://localhost/~user/
ttp://virtualhost/~user/
どっちでもアクセスできてしまうのです
mod_rewriteで設定しかないでしょうか?
あと疑問ですが、mod_rewriteってかなりパフォーマンス落ちそうだけど
httpd.confにmod_rewrite関係100行くらい記述したとして、
影響がある(遅くなる)のはmod_rewriteが機能するとき
(RewriteRuleに当てはまるとき)だけ?
それともapacheの全体の動作自体重くなるのでしょうか?
0214名無しさん@お腹いっぱい。
2006/02/10(金) 03:04:220215名無しさん@お腹いっぱい。
2006/02/10(金) 03:12:020216名無しさん@お腹いっぱい。
2006/02/10(金) 08:30:30そういうボトルネックがあるかどうかを調べるために
ab というツールが付属しているのでは?
mod_rewrite とかいう以前に、モジュール構成やら
テンコモリライブラリ等のせいもあって、apache は
今となっては大して早いサーバではないよ。速度的に
問題があると思ったら、クラスタにしてカバーする
とか考えた方がいいと思うよん。それでも「使いやすい」
というすごいメリットが apache にはあるんだしね。
とは言え、必要十分な速度はありますが。
0217名無しさん@お腹いっぱい。
2006/02/10(金) 09:36:56駄メルコのルータにアタックブロックという機能があるのですが、
これが、一度に複数の接続要求があると、攻撃と見なしてはじいていたようです。
この機能をオフにしたら問題は解消されました。
0218名無しさん@お腹いっぱい。
2006/02/10(金) 09:48:17うはwwwやっぱりルータは自作に限るね
0219名無しさん@お腹いっぱい。
2006/02/10(金) 09:52:18UserDir disabled
</VirtulaHost>
自分がこれまで見た mod_rewrite の利用例のうち、
mod_rewrite でないと解決できないものは極めて稀。
0220名無しさん@お腹いっぱい。
2006/02/11(土) 01:38:21現在下記の内容を httpd.conf に記述しております。
------------------
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteLog "logs/rewrite_log"
RewriteLogLevel 0
RewriteCond %{HTTP_HOST} ^host.explet.com(.*)
RewriteRule ^(.*)?$ https://host.explet.com:444$1 [R]
RewriteCond %{HTTP_HOST} !www.explet.com$
RewriteRule ^/(.*)?$ http://%{HTTP_HOST}/$1 [L,R]
</IfModule>
--------
上記の設定で、
https://host.explet.com/ 左記へアクセスすると
https://host.explet.com:444/ へ変換されるのですが、
GETでアクセスする分には問題ないのですが、
POSTでアクセスした場合、パラメータが全て破棄されております。
例えば hoge.html 内に
<form action="https://host.explet.com/hoge.cgi" method="post">
・・・・
</form>
と記述し、submit しても key=value が一切入ってきません。
mod_rewrite の設定で 何か問題があるような気がするのですが、
お気づきの箇所等ありましたらご教授下さい。
0221220
2006/02/11(土) 01:41:40すいません。
-----
OS : CentOS4.2
Apache/2.0.52
0222名無しさん@お腹いっぱい。
2006/02/11(土) 01:58:55でもものによっては記述がきちゃなくなるんだよな。
それでも解決できるから、俺はmod_rewriteはいまだに使えない。
0223220
2006/02/11(土) 02:10:59mod_proxy で とりあえず解決しました。。
0224名無しさん@お腹いっぱい。
2006/02/11(土) 22:19:56次みたいな書き方は有効(***parameter 100が有効)なんでしょうか?
(モジュールやディレクティブによるのでしょうか?)
***moduleはデフォルトではoffとします
<Directory />
***module on
</Directory>
<Directory /home/user>
***parameter 100
</Directory>
0225名無しさん@お腹いっぱい。
2006/02/11(土) 23:06:12何がしたいのか分からんが、こういう書き方は参考になりまつか?
<Directory "/home/*/">
***module on
***parameter 100
</Directory>
もしユーザ毎に違う parameter 値をセットしたいなら、個別に
<Directory> を記述するしかないですねぇ。
0226名無しさん@お腹いっぱい。
2006/02/12(日) 12:30:55CGIのパスがDOC_ROOT/USERDIR_SUFFIXで始まっているかどうかをチェックしていて、
バーチャルホストの場合は、
DOC_ROOTで始まっているかどうかをチェックしているようなんですが、
バーチャルホストの方が制限が弱いのはどういう理由でしょうか?
UserDirの方もDOC_ROOTのみを判断するようにパッチを当てようと思うのですが、
これによって予期せぬセキュリティホールができるなんてことはあるでしょうか?
■ このスレッドは過去ログ倉庫に格納されています