トップページunix
1001コメント348KB

Apache関連 Part5

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001攻撃ヘリAPACHENGNG
HTTP ServerのApacheに関する話題を扱うスレッドです。

前スレ Apache関連 Part4
http://pc.2ch.net/test/read.cgi/unix/1040312647/

Apache関連サイトへのリンクは >>2-5 あたり
0867エスパーNGNG
>>866
1.3.30マダー?
php.iniの
default_charset =
の辺りはどうなってるよ?
0868866NGNG
ずばり、それでした。先程気がつき、修正したところです。
むひょ〜。こんなことで、ハマッテイタナンテ。
0869名無しさん@お腹いっぱい。NGNG
Apache2で個別にModuleをcompileしたいのですが、
ApacheのソースにModuleのソースを展開して、
./configure --activate-module=src/modules/extra/mod_hogehoge.c
したのですが、できませんでした?
Apache2ではコンパイルの仕方がちがうのですか?
0870名無しさん@お腹いっぱい。NGNG
apxs -c mod_hogehoge.c
0871869NGNG
3504: warning: initialization from incompatible pointer type
3508: warning: initialization from incompatible pointer type
3512: warning: initialization from incompatible pointer type
3516: warning: initialization from incompatible pointer type
っと表示されバイナリが吐き出されません。
Apache2のmod_bwshareなんですけど…。
0872名無しさん@お腹いっぱい。NGNG
>>866
AddDefaultCharset=off

Apache2 の基本だが
0873866NGNG
>>872
> AddDefaultCharset=off
ごめん、それも試した上だった。説明が垂りんですまん。



0874名無しさん@お腹いっぱい。NGNG
自サバ板のApache関連スレとマルチになるのですがお許しください。

商用Unix上のApacheを使っています。動画配信サーバーとして使っている
のですが、WMVファイルが2時間、500MB位になると、アクセスしたとたん
Apacheといっしょにマシンがハングアップしてしまいます。ある程度以下の
容量だと問題は出ません。どなたか、このあたりを追及した方いらっしゃい
ましたらアドバイス頂けませんでしょうか。お願いします。
0875名無しさん@お腹いっぱい。NGNG
エスパーさんお呼びです
0876名無しさん@お腹いっぱい。NGNG
>>875
マルチだ品。
0877名無しさん@お腹いっぱい。NGNG
マルチと断わっておけば許されるとでも思っているんだろうか
0878名無しさん@お腹いっぱい。NGNG
>>875
エスパーの中の人は忙しいんだよ。
0879名無しさん@お腹いっぱい。NGNG
マルチです。
Apacheが動きません。
誰か原因を教えて下さい。よろしくおねがいします。
0880名無しさん@お腹いっぱい。NGNG
いくら僕が「釣られ好き」とは言っても、
こんなに明け透けなのには釣られないぞ。
0881名無しさん@お腹いっぱい。NGNG
>>879 釣られクマー
0882名無しさん@お腹いっぱい。NGNG
server-statusに出てくるGracefully finishingってどー言う終わり方なんれすか?
優雅に終了すること?
0883名無しさん@お腹いっぱい。NGNG
>>882
マニュアルくらい読めよ・・・
リクエストを全部処理し終わってから終了だクマ。
0884名無しさん@お腹いっぱい。NGNG
Apache2.0.40 (RedHat8.0)で中規模なサイトたてています。
名前ベースバーチャルホストを7個ほどたてていますあg
このところ、1日1回httpdプロセス数がMaxClientsまで増えてしまう
現象に悩まされています。
mod_statusを使ってプロセス情報をみると、増えているプロセスは
W(Sending Reply)状態のもので占められています。
関係ありそうなパラメータは下記のようにしてあります。
KeepAlive On
MaxKeepAliveRequests 100
KeepAlive Timeout 15
StartServers 8
MinSpareServers 5
MaxSpareServers 20
MaxClients 150
MaxRequestPerChild 100
* prefork MPM を使用している

このような場合、有効な処方箋はどんなものがあるでしょうか。
0885名無しさん@お腹いっぱい。NGNG
>>884
リロード攻撃されてんじゃね?
0886名無しさん@お腹いっぱい。NGNG
>>885
それも疑いましたが、
14:00〜16:00の時間帯に必ず起き
夜中や休日の日中にはおきません。
業務系のサイトです。

トップページに画像が多数リンクされており、
普通に開いてもリロード攻撃のようになるページであることは確かです。
最初KeepAlive Off でしたがOnにすることで若干軽減されました。
しかし未だに起こります。
とりあえず対症療法で、Apacheのプロセス数を10分おきにチェック
一定の値を越えたらApacheリスタートするスクリプトで乗り切っています。
0887884NGNG
↑すみません884です
0888名無しさん@お腹いっぱい。NGNG
>>887
再現性があるんならそのときにパケットを観測するべし
0889名無しさん@お腹いっぱい。NGNG
2.0.49 にうpする。

商用サイトってうpしたがらないよなぁ。。。
0890名無しさん@お腹いっぱい。NGNG
>>884
普通に足りてないだけじゃなくて?
最大を増やすなり worker MPM で代替できるか検討したりはしたの?
なんにしてもログくらい調べろよ
0891884NGNG
>>890
error_logは普通に見てて、
現象が起きたときに「上限に達しました。値の調整を検討してください」
といわれているので、
すなおに200位に増やせばよいのですかね>MaxClients

あと、その時のアクセスログ(複数仮想サイト)で
攻撃されてないか、怪しいCGIが走ってないか見たんですけど
どうみても普通のアクセスしかされてない。
ただ、同一IPからのリクエストがやたら多く、一瞬DoSか?と思ったら
一人の人が同じページの多数の画像リンク(50ほどある)
を開いているに過ぎないことがわかり、
慌ててKeepAlive ONにした次第です。

>>889氏のおっしゃるとおり
最新版へのUPをしてみたら、改善されますかね?
0892名無しさん@お腹いっぱい。NGNG
一人が同時に50ものリンクをはってるということはダウンロードツールか何かをつかってるってことでしょ?
同時に張れるリンク数を制限するほうほうってなかったけっか?
0893名無しさん@お腹いっぱい。NGNG
>>892
いや、同時に50セッションじゃなくて50回のGETリクエストって事だろ。
0894名無しさん@お腹いっぱい。NGNG
>>891
うpする前に、一人あたりの同時セッション数を制限しろよ。
どっかに設定あっただろ。httpd.confを見直せ。
0895884NGNG
>>892
すみません。説明の仕方が悪かったです。
50ほどの<img src="nantoka.gif">って感じのリンクが
張ってあるページがあります
(それも複数・・・これはコンテンツの作り方の問題と思います)
このページを普通にブラウザで一回クリック
1ユーザで50余りのHTTPリクエストが発生し(これはアクセスログで)
1IPがいくつものプロセスを起動してしまうようです。
(これはmod_statusを効かせてブラウザで観察しています)

これ自体はApacheの応答として正常なのでしょうけど、
問題はmod_statusの画面で'Sending Reply'状態のプロセスが多数発生し
それが死なないまま増殖しMaxClientsまで逝ってしまう状態です。

アドヴァイスどおり、その状態での接続の挙動をもう一度追いかけてみます。
ありがとうございました。


0896名無しさん@お腹いっぱい。NGNG
企業のSEが2chって・・・
なんだかなぁ
0897884NGNG
>>896
あー、俺のことですね。どうもすみません・・・
こういう事をこういう処に書く即ちインチキSEたる所以なわけで。
Google検索等で調べまくってわからなく、此処にたどり着いたのですが、
迷惑ならよそへ逝きます、はい。

>>894さんのおっしゃるような、
いちIPからのコネクションを制限できる命令があったらいいのですが、
標準ではどうも無いようで、
今思いつくのは、MaxRequestPerChildを増やしてみるくらいです。
現在100→1000にしてみています。
いちIPからのアクセス制限や、帯域をしぼる等ができるらしい外部モジュールは
いくつか探したのですが、いまいち扱いが分からず。

それならばと、最新の2.0.49を落として、適切なMPMを組み込んでテストしようとし
こっそりインストール、別ポートでのテストまでは準備しました。
テスト鯖が無いので、別ポートでこっそり起動させようとしていますが、
どうも既存のMySQLモジュールと整合性がないようで・・・
これは明日担当者に聞いてみようと思います。
0898名無しさん@お腹いっぱい。NGNG
>>897
あぁ〜もうボロボロだね。
鯖に勝手にテスト用ポートなんて空けてもいいのか?

君の所の鯖は、穴だらけ状態になってそう・・・
0899884NGNG
>>898
さすがにまだ動かしてはいません。
たしかに仰るとおりだと思われるので
テスト機導入も検討しますわ・・・

素人のボロボロ状態でも
前進しなければならない現実があるのですが・・・
0900名無しさん@お腹いっぱい。NGNG
>>899
そんなのは言い訳にすらならんよ
0901名無しさん@お腹いっぱい。NGNG
にわか管理者奮闘記
http://www.atmarkit.co.jp/fsecurity/index/indexfiles/index-serial.html#beginner

何となく思い出した
0902ヽ(´ー`)ノ ◆.ogCuANUcE NGNG
> これは明日担当者に聞いてみようと思います。
その人は愚痴スレに「使えない SE が(ry」と書くのに違いない。
0903名無しさん@お腹いっぱい。NGNG
>>897
mod_limitipconn
これを使え。
0904884NGNG
>>901
その記事俺も読んだ。
にわか管理者氏は偉いと思うのだが・・・

>>903
そのモジュールよさげですね。
実験機確保したので試してみます。
0905名無しさん@お腹いっぱい。NGNG
>>901
高原さんが一番糞ということでいいですか?
0906名無しさん@お腹いっぱい。NGNG
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" とし、
/var/www/cgi-bin/ に設置したら何の問題もなく動くCGIが
/home/user/public_html に設置したらサーバーエラー(500)になります。
パーミッションも755に変更してあります。
Apache/2.0.40 (Red Hat Linux)

<Directory /home/*/public_html>
Options ExecCGI
Order allow,deny
Allow from all
</Directory>

なぜユーザー領域ではCGIが動作しないのでしょうか?
ScriptAliasでcgi-binにしか設置できないなんて4流貸鯖や5流プロパのようなことはしたくないです
0907名無しさん@お腹いっぱい。NGNG
マルチしてもだいたい住人被ってると思うぞ。
0908名無しさん@お腹いっぱい。NGNG
>>906
マルチうぜぇ。
0909名無しさん@お腹いっぱい。NGNG
>>906
ログ見ろといわれてログも見ないでマルチするお前は7流のクズ。
09104.9-RNGNG
>906
SuEXECが有効になってるんでしょ?
0911名無しさん@お腹いっぱい。NGNG
 今回Apacheを1.3.26から2.0.49に移行したのですが、どうしてもWebDAVが
有効になってくれません。DAVとDAV_FSのモジュールは読み込まれています。
 何か設定を忘れているのでしょうか?

設定
<Directory /var/www/localhost/htdocs/dav>
Dav On
</Directory>

結果(2.0.49)
HTTP/1.1 200 OK
Date: Sat, 17 Apr 2004 14:58:36 GMT
Server: Apache/2.0.49 (Gentoo/Linux) mod_ruby/1.1.3 mod_ssl/2.0.49 OpenSSL/0.9.7d DAV/2 PHP/4.3.6RC2
Allow: GET,HEAD,POST,OPTIONS,TRACE
Content-Length: 0
Content-Type: httpd/unix-directory

結果(1.3.26)
HTTP/1.1 200 OK
Date: Sat, 17 Apr 2004 14:59:48 GMT
Server: Apache/1.3.26 (Unix) Debian GNU/Linux PHP/4.1.2 mod_ssl/2.8.9 OpenSSL/0.9.6g DAV/1.0.3
Content-Length: 0
MS-Author-Via: DAV
Allow: OPTIONS, GET, HEAD, POST, DELETE, TRACE, PROPFIND, PROPPATCH, COPY, MOVE, LOCK, UNLOCK
DAV: 1,2,<http://apache.org/dav/propset/fs/1>;
Content-Type: text/plain
0912名無しさん@お腹いっぱい。NGNG
必要そうな設定が漏れていましたので、追加しておきます
<IfDefine DAV>
<IfModule !mod_dav.c>
LoadModule dav_module modules/mod_dav.so
</IfModule>
</IfDefine>

<IfDefine DAV_FS>
<IfModule !mod_dav_fs.c>
LoadModule dav_fs_module modules/mod_dav_fs.so
</IfModule>
</IfDefine>

<IfModule mod_dav.c>
DavMinTimeout 600
</IfModule>

<IfModule mod_dav_fs.c>
DavLockDB /var/lib/dav/lockdb
</IfModule>
0913名無しさん@お腹いっぱい。NGNG
>>907-909
マルチ厨はイラクへ逝って拉致られなさい
0914名無しさん@お腹いっぱい。NGNG
それだと迷惑だから途中で野垂れ氏ね。
0915名無しさん@お腹いっぱい。NGNG
マルチしてるヤツは罵倒覚悟でカキコしてると思うし
望み通り罵倒だけして答えは教えなくていいんじゃないか?
マルチじゃ回答は得られないって体で教えてやらないとさ
0916名無しさん@お腹いっぱい。NGNG
結局、誰もわからないんだ


氏ねや、クズ
0917名無しさん@お腹いっぱい。NGNG
>>916
マルチクズ。
0918名無しさん@お腹いっぱい。NGNG
>>917
氏ねや、クズ
0919名無しさん@お腹いっぱい。NGNG
エラーログに "Premature end of script headers" って出力されてないか?
0920名無しさん@お腹いっぱい。NGNG
SP2 RC1が出てますが、もうDigest認証は使って良いんでしょうか?
0921911NGNG
僕マルチじゃないんですけど、誰もわかりませんか?
0922名無しさん@お腹いっぱい。NGNG
メンヘルはメンヘル板にお帰りください
0923名無しさん@お腹いっぱい。NGNG
>>911
><IfDefine DAV>
><IfDefine DAV_FS>

-DDAV -DDAV_FS で起動せなあかんよ。
0924名無しさん@お腹いっぱい。NGNG
まぬあるを読まない香具師は放置されても致し方ないかと。。。
0925911NGNG
>>922
もちろん
-DDAV -DDAV_FS
で起動しています。
マニュアルも関係ありそうな部分は全部読んだんですが、原因が全然わかりません。
0926名無しさん@お腹いっぱい。NGNG
>>925
マルチ、マニュアル嫁...etc.出来なくても簡単にいえる言葉だからねw
ここはそんな香具師ばっかりだから他あたったほうがいいと思うよ。
0927名無しさん@お腹いっぱい。NGNG
他はあまり信用しない方がいいよ。まぬあるが信用できないんなら致し方ないけれどもね。
0928名無しさん@お腹いっぱい。NGNG
Apache+Tomcat(mod_jk使用)のとき、
Apache側の設定だけでBasic認証かけることって可能?
0929名無しさん@お腹いっぱい。NGNG
>>928
あたりまえ。
0930名無しさん@お腹いっぱい。NGNG
>920
 Apache とは関係ないが、XP SP2RC1 はお薦めしない。RC2 を待て。
 本国版の TechNet の、XPSP2 専用ニュースグループの購読をお薦めする。

#IE 制作チームに殺意を覚えたぞ、漏れは……
 何が「ダウンロードできないのは RC1 の既知のバグです。RC2 で直します」だゴラァ
0931名無しさん@お腹いっぱい。NGNG
>>930
その程度で殺意か
お前は器が小さいなぁ
0932名無しさん@お腹いっぱい。NGNG
「RC」の意味を知っているんだろうか?
0933名無しさん@お腹いっぱい。NGNG
Republic of China
0934名無しさん@お腹いっぱい。NGNG
Radio Control
0935名無しさん@お腹いっぱい。NGNG
Request for Comments
0936名無しさん@お腹いっぱい。NGNG
それはRFC
0937名無しさん@お腹いっぱい。NGNG
何でこんな流れになってるんだ(w
まぁ,そろそろ次スレだし,埋めにはちょうどいいだろうが(w
0938928NGNG
.htaccessを使わない場合なんだけど、

1.httpd.confに以下の記述を追加

Alias /(Application Name)/ "/(tomcat directory)/webapps/(Application Name)/"

<Directory "/(tomcat directory)/webapps/(Application Name)/">
AuthName "hogehoge"
AuthType Basic
AuthUserFile "/hogehoge/.htpasswd"
Require valid-user
</Directory>


2. jk2.propertiesに以下の記述を追加
request.tomcatAuthentication=false

3. .htpasswdを作る

でやってるんだけど、動かないOTL
何か問題があれば指摘plz...
0939名無しさん@お腹いっぱい。NGNG
<Location>
0940928NGNG
<Directory "..."> --> <Location "...">
でいけました
うはw まじぬるぽ


どもありがと。
0941名無しさん@お腹いっぱい。NGNG
結局、IEのバグが直るまでDigest認証はオアズケなのか…
0942名無しさん@お腹いっぱい。NGNG
プロセスがずっとMaxclient150一杯出ているのですけど、
これはどうやってチューニングすればいいのですか?
というか、このままでも構わないのでしょうか?
半分くらいは待機状態。
0943名無しさん@お腹いっぱい。NGNG
エスパーさん、お呼びです
0944名無しさん@お腹いっぱい。NGNG
まさかエスパーさんてエスパー伊藤さんじゃないですよね
ここみてるとエスパーさんってかなりの知識の方みたいですが
どこかホームページとか開設されていないでしょうか
過去には出てきていないみたいですのでもしあれば教えてください。
0945名無しさん@お腹いっぱい。NGNG
スレ埋め立てモード宣言?

0946名無しさん@お腹いっぱい。NGNG
>>944
>>867
0947名無しさん@お腹いっぱい。NGNG
946さんはエスパーさんですか?
言い方が悪かったようです、
過去に出てきてないというのエスパーさんのホームページなどの情報が無いと言う意味でした。
もしお持ちでしたらぜひ拝見したいと思って聞いた次第です。

0948名無しさん@お腹いっぱい。NGNG
ApacheユーザーズMLで聞いてごらんなさい。
0949名無しさん@お腹いっぱい。NGNG
948さん早速ありがとうございました、
エスパーさんはMLで活躍されているんですか、
斜め読みですがいままでハンドルを見かけた事はありませんでした
MLは敷居が高くてまだ投稿した事はありませんが
機会がありましたら聞いてみます。
0950名無しさん@お腹いっぱい。NGNG
あんまりおもしろくないです。
0951名無しさん@お腹いっぱい。NGNG
mod_sslでホスト名が変わる場合は証明書も作りなおさないといけないのぉ?
0952名無しさん@お腹いっぱい。NGNG
>>951
低脳はサーバの電源を切れ
0953名無しさん@お腹いっぱい。NGNG
2Gを超えるログファイル吐き出せますか?
in HPUX(LargeFile)
0954名無しさん@お腹いっぱい。NGNG

1.3.27です。
>>408見ると2以上じゃないとダメな気もしてきました...
0955名無しさん@お腹いっぱい。NGNG
>>954 >>408 は OS とか書いてないからなぁ......
32-bit 環境だと,Large File サポートしてても,コンパイル時に
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 (OS により異なる)とか
指定しないといけないだろうからねぇ.まぁ,こちらもソースとか
configure スクリプトとかちゃんと見ないで書いてるからわからんけど.
0956名無しさん@お腹いっぱい。NGNG
virtualhostいっぱいたててる鯖で
ログ分けるのまんどくせーから、CustomLogに %{Host}i を一番ケツにつっこんでたんですが
まんどくさがったために、ログ解析をいまさらしようとした時に
virtualhost毎に分けないとだめな作業がどさっとのしかかってまいりました
一撃で切り分けられる、なんかいい方法ないっすかね

すでに今使ってないvirtualhost名とかあったりするので
virtualhost名を列挙して、それごとにgrepとかまんどくせーので
コマンドライン1行でぱすーと、なんか分けてくれる幸せな方法…

教えて、スクリプトのエロい人

0957>>956NGNG
#!/usr/bin/perl -w

while (<>) {
    my $host = $_;
    $host =~ s/^.*\s+(\S+)\n?$/$1/;
    open(OUT, ">>access-$host.log") || die;
    print OUT;
    close(OUT);
}
0958名無しさん@お腹いっぱい。NGNG
awk '{f="access-" $NF ".log"; NF--; print >> f}'
0959956NGNG
>957-958
ものごっつエロい人達、ありがとうございますた
罵倒されると思ってたところに、まともなレス2連発
感動しました
目からうろこで目から涙でした
0960名無しさん@お腹いっぱい。NGNG
Apacheのmod_sslに関して質問です。
example.com と www.qxample.com の証明書があり、
それぞれを<VirtualHost>で別々のバーチャルホストとして設定しています。
ところが、実際には片方の証明書しか使用されません。
example.com が正常のときは www.example.comが、
www.example.com が正常のときは example.comが、
もう一方の証明書を使用してしまい、証明書のドメイン名が不正になってしまいます。
これは、設定がおかしいのでしょうか?
ちなみに、設定はこういう感じです。
<VirtualHost *:443>
 ServerName example.com
 ServerAdmin admin@example.com
 DocumentRoot /home/user/secure_html
 SSLEngine on
 SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
 SSLCertificateFile /usr/local/apache2/conf/ssl.crt/example.com.crt
 SSLCertificateKeyFile /usr/local/apache2/conf/ssl.key/server.key
 (省略)
</VirtualHost>
<VirtualHost *:443>
 ServerName www.example.com
 ServerAdmin admin@example.com
 DocumentRoot /home/user/secure_html
 SSLEngine on
 SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
 SSLCertificateFile /usr/local/apache2/conf/ssl.crt/www.example.com.crt
 SSLCertificateKeyFile /usr/local/apache2/conf/ssl.key/server.key
 (省略)
</VirtualHost>

どなたか助けてください・・・。
0961名無しさん@お腹いっぱい。NGNG
>>960
証明書を使う時は、IPベースのバーチャルドメインじゃないとだめ。
example.comとwww.example.comのIPを別にしないとできないよ。
0962名無しさん@お腹いっぱい。NGNG
>>961
ありがとうございます。
お陰で設定できました。

というか、ここにSSLで名前ベースのバーチャルは出来ないと書いてあますね。
http://httpd.apache.org/docs-2.0/ja/vhosts/name-based.html

調べ方が足りなかったようです。
猛省。
0963名無しさん@お腹いっぱい。NGNG
さっきmod_proxyを使ってproxyを構築しました。
そこで質問なのですが、これを認証させるようにはできないのでしょうか?
"Apache mod_proxy 認証"でぐぐってみたけど見つかりませんでした。
今のままだと特定リモホからは自由に使えてしまうので心配です。
0964名無しさん@お腹いっぱい。NGNG
>>963 こんな感じでネ〜ノ?

# 1.x
<Directory proxy:*>
    AuthType basic
    AuthName "Proxy authentication"
    Require valid-user
    AuthUserFile /path/to/.htpasswd
</Directory>

# 2.x
<Proxy *>
    AuthType basic
    AuthName "Proxy authentication"
    Require valid-user
    AuthUserFile /path/to/.htpasswd
</Proxy>
0965名無しさん@お腹いっぱい。NGNG
>>964
解決しました。httpの認証と同じでできるのですね。
0966名無しさん@お腹いっぱい。NGNG
もともと認証がかかってるページにその設定をしたプロクシ経由で
アクセスしようとするとおかしくならない?
プロクシの認証はエラーのときに 401 を返す通常の認証ではなく、
407 を返すプロクシ認証を使わんとあかんと思う。
http://www.studyinghttp.net/rfc_ja/2616/sec14.html#sec14.33
レス数が950を超えています。1000を超えると書き込みができなくなります。