Apache関連 Part10at UNIX
Apache関連 Part10 - 暇つぶし2ch521:名無しさん@お腹いっぱい。
08/04/23 19:20:57
/etc/httpd/conf.d/squid.confって何を設定するファイルなのですか?

522:名無しさん@お腹いっぱい。
08/04/23 19:43:29
>>521
Squid用のディレクティブを記述するファイルだ。
Squidの管理用CGIを公開する時に書き込む。
別にhttpd.confに書いてもいいと思うけどね。

Squidはキャッシュ機能付きのプロキシサーバで、Apacheの前にリバースプロキシとして設置して
アクセスを物凄い勢いで高速化することができるがスレ違いなのでやめとく。

523:名無しさん@お腹いっぱい。
08/04/23 23:06:58
apacheをソースからインストールしている場合でも
apr、apr-utilはRPMのものを使っていいのでしょうか?

524:名無しさん@お腹いっぱい。
08/04/23 23:07:27
いいよ
俺はそうしてる

525:名無しさん@お腹いっぱい。
08/04/23 23:14:19
ありがとうございました

526:名無しさん@お腹いっぱい。
08/04/23 23:32:00
GWSってApache?

527:名無しさん@お腹いっぱい。
08/04/24 08:14:12
本のサンプルに、SSLRandomSeedの指定で
start,connectともに
builtin,file:/dev/random,file:dev/urandom
を連続して記述してあるのですが、
連続して指定すると種が継起的に変化していくのでしょうか?
実際問題、ここには何を指定するのが適当ですか?

528:名無しさん@お腹いっぱい。
08/04/24 19:51:10
腐った処理系じゃなければ何でもいんじゃね? ぶっちゃけ気にしたことないw

529:名無しさん@お腹いっぱい。
08/04/27 02:57:45
IEでphpを読み込もうとするとダウンロードのメッセージボックスが出てしまうのですがなぜでしょう?

530:名無しさん@お腹いっぱい。
08/04/27 03:26:31
apache2.0.x + mod_auth_ldap2で認証するユーザをグループで指定できますか?
Require userで個別にユーザ指定するのはできるのですが、マニュアル通り設定しても
動いてくれないようです。

httpd.conf
require group cn=hogeg,ou=Groups,dc=ldapsv

LDAPレコード
dscl ldapsv read /Local/default/Groups/hogeg
cn: hogeg
Member: user1 user2 user3


よろしくお願いします。

531:名無しさん@お腹いっぱい。
08/04/27 14:19:25
>>529 AddType もしくは AddHandler してる?
>>530 分からん。

532:名無しさん@お腹いっぱい。
08/04/28 06:36:41
mod_proxyでproxyフォワードを試しています。

proxy.conf内の<Proxy *>ディレクティブにて、
Order deny,allow
deny from all
Allow from hogehoge.ddo.jp
としていますが、接続が成功しません。
直IPをAllowに指定すると成功します。lookupが問題なのかとも思い、
HostnameLookups On を付け足してみましたが効果なしでした。

何か見直すべき個所があれば、教えて頂けませんか? お願いします。

533:名無しさん@お腹いっぱい。
08/04/28 11:30:13
>Allow from hogehoge.ddo.jp

逆引きはできる?

534:名無しさん@お腹いっぱい。
08/04/28 12:02:10
>>532
そのホスト名はFQDNなの? 違うなら
.example.jp のように先頭にドットをつけてみれ。

535:532
08/04/28 17:03:46
>>533 逆引きできます。nslookupでNon-authoritative answer:と返ってくるのは関係ありますでしょうか?

>>534 FQDNです。念のため . を先頭につけてみましたが、結果は同じでした。

ddo.jpはDynamic dnsを借りているものですが、何か設定があるのかな…。

536:名無しさん@お腹いっぱい。
08/04/28 18:27:38
なんで逆引きで DDNS な FQDN 返してくれるのかの方が不思議だ。

537:532
08/04/28 18:54:55
>>536 勘違いしました。逆引きできないからホスト名利用できなかったんですね。
もう少し調べてみます。ご指摘ありがとうございました。

538:名無しさん@お腹いっぱい。
08/04/28 19:09:27
DDNSなDQN に見えた

539:名無しさん@お腹いっぱい。
08/04/29 21:52:41
apache の ログフォーマットで

%tを

[2008-04-30 12:34:56]

と書きたいのですが、どのような変数名にすればいいのでしょうか?
YY DDとか使うと思うのですが・・。

540:名無しさん@お腹いっぱい。
08/04/30 01:54:24
URLリンク(httpd.apache.org)
%{format}t

541:名無しさん@お腹いっぱい。
08/04/30 14:05:55
質問させてください。
3時間くらい処理時間がかかるcgiスクリプトを実行するとエラーになって途中で終わってしまいます。
最後まで処理させるにはどうしたらいいでしょうか?
ちなみにhttpd.confにRLimitCPU 300 と書いたのですが途中でエラーになって終わってしまいました。


542:名無しさん@お腹いっぱい。
08/04/30 14:49:39
5分とか10分とかならまだしも、3時間もかかるものを
CGI でやろうとする考え自体が間違い。

543:名無しさん@お腹いっぱい。
08/04/30 14:58:35
RLimit書かなきゃいいだろ

544:名無しさん@お腹いっぱい。
08/04/30 15:03:29
>>541 いろんな意味でアフォだろ?w >>542 >>543の言う通りだと思うぞ。どんまい。

545:名無しさん@お腹いっぱい。
08/04/30 15:46:23
httpサーバーがタイムアウトしないようにする。
Webブラウザがタイムアウトしないようにする。

546:名無しさん@お腹いっぱい。
08/04/30 16:29:58
>>541
> 3時間くらい処理時間がかかるcgiスクリプトを実行するとエラーになって途中で終わってしまいます。
> 最後まで処理させるにはどうしたらいいでしょうか?

まじれすすると、そういうのはCGIでキューに積んで、Cronで回してください。
ProxyServerとかが間にはいると、そいつがきっちまって、停止することもあるので、問題が複雑になります。


> ちなみにhttpd.confにRLimitCPU 300 と書いたのですが途中でエラーになって終わってしまいました。

これ、単位違うものではないかな。

547:541
08/04/30 17:18:56
>>542
仕方ない。時間がかかる処理もあります。

>>543
最初は書かずにタイムアウトした。

>>545
それを知りたい。

>>546
単位違うものとは?

548:名無しさん@お腹いっぱい。
08/04/30 17:36:07
いや、仕方ないなんてことはない。
他の手段を考えるべき。
適材適所。

549:名無しさん@お腹いっぱい。
08/04/30 17:45:48
時間がかかる処理を1つのプログラムにして
CGiはそれを起動するようにするべきだが。。。

RLimitなんとかってのはそもそも書いちゃだめ
Timeoutディレクティブを適当に書け
単位はマニュアル読め

550:名無しさん@お腹いっぱい。
08/04/30 22:27:52
質問です。
64bitでコンパイルして動作するapacheのバージョンは決まっているのでしょうか?
このバージョンならいけるよというのがあれば教えていただきたいのですが。

551:名無しさん@お腹いっぱい。
08/05/01 00:21:16
>>547
キチガイ警報w

まぁ、どうしてもCGIでやりたいのならだな、CGI から別プロセスでやりたい処理を
system("/path/to/program &"); のようにバックグラウンド起動してだな、CGI は
速やかに終了させる。バックグラウンドプロセスは、処理中はテンポラリファイルを
作るようにしておくんだ。処理が終わったら自分自身でテンポラリを削除する。

そんでもって CGI は、そのテンポラリファイルが存在しているうちは
「処理中です」というメッセージを出力して二重起動しないようにするんだ。
これでどうですかね?

しっかし、いるんだよな。こういうアプローチそのものを変えようとしない香具師がよ。
別の発想がないっつーか。長い処理を CGI でやろうってセンスがイミフだぞ。

552:551
08/05/01 00:22:18
RLimitCPU はもちろん無効にしろよ。

553:名無しさん@お腹いっぱい。
08/05/01 00:31:56
>>550 特に理由が無いなら2.2.xの最新

554:名無しさん@お腹いっぱい。
08/05/01 01:01:05
>>551
それじゃプロセスグループを切り離せないからマズい。>system(...)
apacheにSIGHUP等が飛んだら巻き添えを食うぞ。
daemonプロセスを起動するときと同じ手順を踏む必要があるはず。


555:名無しさん@お腹いっぱい。
08/05/01 01:18:37
>>554
やっぱそう?w 何となくそんな気はしたんだけどね・・・
彼に理解できるレベルじゃないな。
close, fork, setsid, SIGIGN

556:名無しさん@お腹いっぱい。
08/05/01 01:43:32
ちと個人的にも気になったんでやってみた。厳密には setsid した方が良いんだろうけど、
漏れの環境では省いても要件は満たせそうだ。setsid しないと親子関係が続いてるから
やっぱ close しないとダメだね。以下は perl でテキトーに書いた例。

if ((my $pid = fork()) == 0) {
 child();
} elsif ($pid > 0) {
 parent();
}
die $!;

sub parent {
 print 'Content-Type: text/html', "\n\n";
 print '<html>ok</html>';
 exit(0);
}

sub child {
 close(STDIN); close(STDOUT); close(STDERR);
 $SIG{'HUP'} = 'IGNORE'; $SIG{'USR1'} = 'IGNORE';
 system("./test.sh &");
 exit(0);
}

557:541
08/05/01 01:46:12
>>544=>>551=552=555

ごめんなさい。あなたはとても知識が豊富で頭がいいこともわかってます。
僕はあなたから見ると基地害かもしれませんが一生懸命がんばりたいです。
僕に理解できそうにないなら理解できるように教えてください。
といっても、教えてもらえないだろうな・・・orz

558:名無しさん@お腹いっぱい。
08/05/01 01:56:00
だから、どうしても >>545 をやるなら方法は >>551 だっつーの。これは理解できるでそ?
画面と実処理を切り離さないといけないと思うの。
で、その実現方法が >>556 なの。これも良く読めば難しくないはず。はず。はず。

559:名無しさん@お腹いっぱい。
08/05/01 02:01:18
むしろTORQUEみたいなバッチジョブ管理システムを導入したほうが後々楽かも

560:名無しさん@お腹いっぱい。
08/05/01 02:05:51
そもそも何がしたいのか(ry
そもそもプログラミング知識は(ry

561:名無しさん@お腹いっぱい。
08/05/01 02:20:41
>>556
んー、プロセスグループを切り離さないと、シグナル等のからみでどんな副作用
が出るかわからんから、ちゃんとsetsid()した方がいいと思うんだけどなぁ。
perlなら use POSIX qw(setsid); ... setsid(); でOKだし。
あと、そこまでやってsystem()は無いと思うんだが。
素直にfork&execしようよ……。

562:名無しさん@お腹いっぱい。
08/05/01 02:30:27
> httpサーバーがタイムアウトしないようにする。
RLimitCPU maxする。RLimitCPUは秒またはmaxを指定だから300と書いたら5分でタイムアウト。

> Webブラウザがタイムアウトしないようにする。
だらだらと定期的(例えば1分毎)に出力を垂れ流す。

但し、Apache 1.3の頃はNPHスクリプト使えば、Webブラウザと直結だったが
2.xからNPHを含めて、httpdが常にCGIの向こう側にいるような気がする。
これが正しいなら、httpdがバッファリングするからWebブラウザにデータが
渡らないかもしれないので、一回のトランザクションでやる(Webブラウザを
タイムアウトさせない)のは難しい。
(バッファリングを回避するために、でかいデータを垂れ流すとWebブラウザが太る)

確実にやるなら
>>551(>>556, >>561)のようにCGIプロセスを切り離す。
・自分でサーバーソケット開く。
・定期的にそれに接続(JavaScriptやmeta refresh使う)することにより、終了を監視する。

ほら、無理にCGIでやる気がなくなってきただろ。(笑)

563:名無しさん@お腹いっぱい。
08/05/01 02:35:42
>>541 は おどろき とまどっている!
>>541 は あたまが こんらんした!
>>541 は にげだした!
しかし まわりこまれてしまった!
>>541 は くだけちった!

564:名無しさん@お腹いっぱい。
08/05/01 02:42:17
>>561
> あと、そこまでやってsystem()は無いと思うんだが。
たしかにwwww サーセン

565:名無しさん@お腹いっぱい。
08/05/17 12:57:26
>>438
何か嫌なことでもあったのか。
俺は未だに、1.3系を使い続けてるけどな。
これで十分こと足りるし、ライセンスがらみの問題もあるんで

566:名無しさん@お腹いっぱい。
08/05/17 13:24:22
Apacheはパイプが詰まったりするし、Perlはシグナル周りを無視しておかないとウンコだったりしてやってられないw

567:名無しさん@お腹いっぱい。
08/05/17 15:28:45
ちょい質問なんですが最新版の2.2.8ではなく、
2.2.3をゲットしたいんですが公式にはアーカイブ置いてないんでしょうか??

568:名無しさん@お腹いっぱい。
08/05/18 00:30:49
(??д?)? ????????????????????

(??д?)?????????????????

569:名無しさん@お腹いっぱい。
08/05/18 00:34:24
Older Releases
Only current, recommended releases are available on www.apache.org and the mirror sites.
Older releases can be obtained from the archive site.
URLリンク(archive.apache.org)

570:567
08/05/18 00:53:30
>>569
ありがとうございます!

2年間ぐらい海外のどっかのコミニティサイトをずっと公式だと思ってましたwwww(ノ∀`)


571:名無しさん@お腹いっぱい。
08/05/20 13:32:22
パスワード認証に付いて質問させてください。

アウトソーシングしているサーバがあるのですが、ssh等でのアクセスはできず
FTPのみのアクセスになり、htpasswdが実行できません。
パスワードファイルは他の環境(手持ちのLinux環境)で作成したものをアップロードして
使用することもできるのでしょうか?

すみませんが教えてくださいお願いたします。

572:名無しさん@お腹いっぱい。
08/05/20 13:32:47
パスワード認証とはBASIC認証のことです。
申し訳ありません。

573:名無しさん@お腹いっぱい。
08/05/20 13:36:13
試してみれば

574:名無しさん@お腹いっぱい。
08/05/20 13:48:55
やってみたらできました。
パスワードファイルを見たら、単に暗号化してあるだけなんですね。

cgiで生成できるのであれば、便利ですね。

575:名無しさん@お腹いっぱい。
08/05/20 20:05:37
つ system関数

576:名無しさん@お腹いっぱい。
08/05/20 21:32:06
すいません。apacheのアクセスログの
書き込みタイミングっていつなんでしょうか。

問題なのはアクセスログが残っているにも関わらず、
(例えばネットワークの障害の原因で)
クライアントがデータを取得できていないということが
あり得るのかどうかということです。

お手数ですがご教授頂けないでしょうか。

577:名無しさん@お腹いっぱい。
08/05/20 21:37:32
syslogの書き込みタイミングなんてならんでしょ
UDPだし、信頼性の微塵もない

578:名無しさん@お腹いっぱい。
08/05/20 21:40:30
>>576
ひとつのリクエストが終わったとき
つまり、突然ネットワークがおかしくなった場合でもTimeoutだけ経過すれば
ログに書き込まれる

>>577


579:名無しさん@お腹いっぱい。
08/05/20 22:11:53
>>576
ログ指定に依存
例えば、mod_logio使えば実際に転送されたバイト数。

>>577
apacheは自前でログ書いてるよ。知ったか乙。

580:名無しさん@お腹いっぱい。
08/05/20 22:36:38
>>579
あなたも何を言ってるんだ?

581:576
08/05/20 22:45:24
>>577,578,579
返信ありがとうございます。

現状の設定ではmod_logioは設定していません。
mod_log_config.soを設定しているだけです。

その場合ですと
apacheにアクセスログが残っているということは
1. クライアントからapacheにリクエストがあった
2. apacheがクライアントにデータを送出した
3. クライアントがデータを受信したかどうかは定かでは無い
という事でよろしいのでしょうか。

また2についてなのですが、apacheがデータを送出というのは
実際にネットワークカードからパケットが送信されたと認識しても
問題ないのでしょうか。勉強不足確認不足で申し訳ないのですが、
例えばiptables等で外へ出ていくパケットを遮断をした場合等にも
アクセスログは残るのでしょうか。

質問ばかりで申し訳ありません。
自分でももう少し調べてみます。


582:名無しさん@お腹いっぱい。
08/05/20 22:56:07
apacheのログをsyslogに回して配信してもらうのが普通だと思ってた。
ローカル環境以外に飛ばしたいときはどうしてるの?

583:名無しさん@お腹いっぱい。
08/05/20 23:07:32
飛ばしたくなったことがない。

584:名無しさん@お腹いっぱい。
08/05/20 23:12:33
>>582
逆にlocalに書く以外を見たことがない。
運用屋さんによると、syslogはログが欠けるからダメなんだと。(localhostでもダメなのか?)
ちなみにログは、ローテートした後、NAS上のホスト毎のディレクトリに保管。
一定期間後にテープにバックアップ。

585:名無しさん@お腹いっぱい。
08/05/20 23:12:59
syslogのリモート転送機能なんて使うかな?
OpenViewやJP1などのログ監視エージェントを入れるとかして、
ある程度整理・要約したものをイベントとして送信するようにしている。
フリーのツールでも探せばこれらに相当するものはあるんじゃね(muninとかnagiosあたりかな?)。


586:名無しさん@お腹いっぱい。
08/05/20 23:17:14
>>581
まず、mod_logioは全く関係ない。

サーバーが、クライアントとのやり取りが終了したと考えた時点でログに記録される。

クライアントとのやり取りが終了するのは
1.正常にデータを全部送った
2.クライアントが途中で切断した
3.クライアントが応答のままTimeoutの時間が過ぎた
4.サーバーが諸事情により切断せざるを得なくなった(Apacheのstop,restart)
ってとこかな思いつくのは

あなたはTCPのことをきちんと知ってる?
そうじゃなけりゃ正直何から説明していいか分からん

587:名無しさん@お腹いっぱい。
08/05/20 23:17:40
×クライアントが応答のままTimeoutの時間が過ぎた
○クライアントが無応答のままTimeoutの時間が過ぎた

588:名無しさん@お腹いっぱい。
08/05/20 23:20:22
>例えばiptables等で外へ出ていくパケットを遮断をした場合等にも
>アクセスログは残るのでしょうか。

残る

589:名無しさん@お腹いっぱい。
08/05/20 23:42:10
>>586 関係おお有り。知ったか乙。

URLリンク(httpd.apache.org)
> httpd 2.0 では 1.3 とは異なり、%b と %B フォーマット文字列はクライアントに
> 送信されたバイト数そのものではなく、 HTTP レスポンスのバイト数です (これら
> は異なるもので、たとえば、 コネクションが途中で破棄された場合や、SSL 使用時
> に一致しません) 。 mod_logio で提供されている %O フォーマット文字列で、ネッ
> トワーク経由で実際に転送されたバイト数を 記録できます。

590:名無しさん@お腹いっぱい。
08/05/20 23:59:30
>>582
リアルタイムには飛ばさない。
忙しい時間帯にさらに負荷をかけるようなことはしない。

ローカルにとっといて、
一日一回 NFS なり scp なり rsync なりで送る。

591:名無しさん@お腹いっぱい。
08/05/21 00:10:41
>>590
んなことしてたら、ログの意味がねーだろ
各々のマシンに監視させて処理させてるの?

592:名無しさん@お腹いっぱい。
08/05/21 00:18:48
>>591
「ログの意味」って、たとえばどういうこと?

593:名無しさん@お腹いっぱい。
08/05/21 00:21:02
記録する意味。
24時間も前の情報なんてほとんど使わないでしょ。
なにか問題が起きて、24時間後に対応するって

594:名無しさん@お腹いっぱい。
08/05/21 00:22:47
ん、Apacheスレだからアクセスログの話かと思ってたけど、違うの?

ErrorLogの方の話なら、それぞれのマシンに監視仕掛けてるよ。

595:名無しさん@お腹いっぱい。
08/05/21 00:27:08
>24時間も前の情報なんてほとんど使わないでしょ。
SOX法知ってる?

596:名無しさん@お腹いっぱい。
08/05/21 00:39:12
>>593
後から問題が発覚して、ディスク上に残ってるログ全部をごりごり調査したことなんて、1度や2度じゃ済まないんだが。

597:名無しさん@お腹いっぱい。
08/05/21 00:47:48
>>596
あるね。
おれはWeb屋だけど、お客から何月何日、~のコンテンツにアクセスしたIPアドレス、時間を調べて報告して欲しいなんてしょっちゅう。

598:名無しさん@お腹いっぱい。
08/05/21 01:07:43
フルボッコだなw

599:名無しさん@お腹いっぱい。
08/05/21 01:10:37
>>589
それと、ログに記録されるタイミングに、何の関係があるんだ?

600:名無しさん@お腹いっぱい。
08/05/21 01:21:08
>>595
それ別に訳に立たないじゃん。
法律で帳面の保存を義務づけられてるのと同じ

>>596
だから一箇所にまとめるんじゃん

>>597
ログをあさる数少ない原因をだされても…

601:名無しさん@お腹いっぱい。
08/05/21 01:48:20
だから>>590とかやって一箇所にまとめてるじゃん。

何を主張したいのかよくわからん。

602:名無しさん@お腹いっぱい。
08/05/21 01:48:44
>>599
日本語で書いてあるのにわからないの?
転送開始前にログを取るか、転送完了後にログを取るかが異なる。

603:名無しさん@お腹いっぱい。
08/05/21 01:50:49
>>602
どこにそんなことが書いてあるか、日本語でも英語でもいいから
Apacheのマニュアルからそのまま(as-is)コピペしてくれないかな?

604:名無しさん@お腹いっぱい。
08/05/21 01:54:13
>>603
>>589にコピペした部分に書いてある。池沼さん?

605:名無しさん@お腹いっぱい。
08/05/21 01:54:34
>>600
おまえの頭が悪い(≒おまえの周りの状況が全てに適用できると思い込んでる)のはわかった。

606:名無しさん@お腹いっぱい。
08/05/21 01:55:55
> mod_logio で提供されている %O フォーマット文字列で、ネッ
> トワーク経由で実際に転送されたバイト数を 記録できます。

確かに、mod_logioを使ったときは、実際に転送が終わった後にログがログファイルに記録されるだろうね。
んじゃ、mod_logioを使わなかったときは転送が終わる前にログがログファイルに記録されるなんてどこに書いてあるんだ?

607:名無しさん@お腹いっぱい。
08/05/21 02:07:07
>>606
チンケなプライド保とうと必死だな。www
元の質問(>>576)で問題にしているタイミングとは、実際の書き込みタイミングで
はなく、ログに書き込まれた情報が取得されたタイミングである事は明白。

608:名無しさん@お腹いっぱい。
08/05/21 02:31:08
>>607
おいおい
mod_logio使うかどうかでログに記録される時刻が変わるというのか?
1GBのファイルをダウンロードするのに2分かかる場合、
ログファイル内のアクセス時刻の表示が2分変わると言うのか?

609:名無しさん@お腹いっぱい。
08/05/21 02:54:34
>>608 低脳必死杉。www
タイミング==アクセス時刻と読む事に活路を見出したのか?。www

元の質問(>>576)を良く読んで、何を気にしているかよく考えなさい。

>>608の言いがかりに関しては
ログに書き込まれた情報(転送バイト数)が取得されたタイミングが異なる。
といっておこう。

610:名無しさん@お腹いっぱい。
08/05/21 02:56:07
>>576と転送バイト数には何の関係も無いんだが

611:名無しさん@お腹いっぱい。
08/05/21 03:28:40
>>610
ある。わからないのか? 本当に馬鹿なんだな。

612:名無しさん@お腹いっぱい。
08/05/21 03:41:40
>>576には
「問題なのはアクセスログが残っているにも関わらず、」
と書いてあり、アクセスログが書いてあるかどうかが問題なわけで
転送バイト数がどうかしたのか?

さっきから人のことを低脳とか日本語ができないとか言うけど、
だいたい>>579の「例えば、mod_logio使えば実際に転送されたバイト数。」
はどの質問に対する答えなのか。日本語が出来てないのは誰なのか。

613:名無しさん@お腹いっぱい。
08/05/21 03:59:28
>>609の言ってるように、プロセスがログに書き込む内容を取得する時間が異なるとゆうことは、
>>608の言ってるような事態が起こりうるかもしれない。
しかしそうなって来ると、そもそもlogに書き込まれるアクセス時間が、リクエストを受け取った時間なのか、
リクエストが終了した時間なのかが問題になりそう。

ウチで以前、一部のクライアントがコネクションを放さなくて、アクセスログに書き込まれた時刻が、
前後の行から3分位ずれたログが多数書き込まれることがあった。
mod_logioなんぞは不使用だったが、恐らくリクエストがあった時間をそのプロセス(スレッド)が記憶しており、
コネクションが切れた時点でlogに書き込んだものと思われる。(sizeについては動的ページだったのでアテにできず)

もしmod_logioを使えば、コネクションが切れた(書き込む情報を取得した)時間も取れるかもしれない。
あるいは、その時間を書き出す設定が、ひょっとしたらCustomLogあたりにあるかもしれない。
(それが出来れば、問題が起きたどうかを判断する助けになるかも)

つうことで、本家のmanualあさって来ます。

614:613
08/05/21 04:27:27
今、読んできた(jpのページだけだけど)。

まず、ログに書き込まれる時刻は、リクエストを受けた時間のみしか記録できないようだ。
(logio使用、不使用に関わらず。なーんだ、残念・・)

で、リクエストを返すのに掛かった時間を、秒またはミリ秒(ms)で記録することはできるようだ。
(これは、CGI等が実行された時間なのか、リクエストが完全に終了するまでの時間なのかは、検証必要。今度やってみよう。)

>>576の質問については、logio使用不使用に関わらず、アクセスが異常終了(TimeOutとか、クライアントが中止とか)
した場合に、その内容を書き出す(あるいは書き出さない)ような設定はないようなので、

>>579の答えは、「タイミングがいつなのか?」のみの場合は、その通りだけど、
後半部分も含めると、「log指定に依存」は正確ではないのではないか。

615:名無しさん@お腹いっぱい。
08/05/21 04:32:12
>>614 だけど、
ごめん、ミリ秒じゃなくてマイクロ秒だった・・・・・。

616:名無しさん@お腹いっぱい。
08/05/21 11:15:38
apache のバージョンや設定にかかわらず、ログに出力されるのはレスポンス終了後。
ただし、1.3 ではログのタイムスタンプがログを書いた時刻になるのに対して、
2.x ではリクエストを受け付けた時刻になる。
なので、1.3 ではログが必ず時刻順に並ぶが、2.x ではレスポンス完了まで
時間がかかるとログの時刻がさかのぼることがある。
コンパイル時に何か define すれば 2.x でも 1.3 互換の時刻出力が
できたような記憶があるけど、詳しいことは忘れた。

で、mod_logio は LogFormat で使える書式制御文字を増やすだけで、
今回の件にはまったくなんにも関係ない。


617:名無しさん@お腹いっぱい。
08/05/21 12:14:42
応用力が致命的に欠如してるな。これが「ゆとり」か。

%b 転送する予定のバイト数
%O 転送したバイト数
両方記録することで>>576が問題にしている状況を説明できるログになる。

618:名無しさん@お腹いっぱい。
08/05/21 12:18:10
サーバが送信したバイト数は
クライアントが受信したバイト数と必ず一致するのだろうか。

619:名無しさん@お腹いっぱい。
08/05/21 12:42:38
>すいません。apacheのアクセスログの
>書き込みタイミングっていつなんでしょうか。

という問いに対して %b、%O が出てくる理由を応用力が欠如したゆとりにも
理解できるように説明してもらえるとありがたいです。

>問題なのはアクセスログが残っているにも関わらず、
>(例えばネットワークの障害の原因で)
>クライアントがデータを取得できていないということが
>あり得るのかどうかということです。

こちらに関していえば、「あり得る」で問題ないですよね。
ログ出力をどう指定するかとはまったく無関係に。
っていうか、ログの指定方法を変えることでデータの転送の確実性が
変わったりなんかしたら大変なことだ。

620:名無しさん@お腹いっぱい。
08/05/21 12:57:40
>>619
> という問いに対して %b、%O が出てくる理由を応用力が欠如したゆとりにも
> 理解できるように説明してもらえるとありがたいです。
それは >>576 の後半に書いてあるじゃん。
そもそもの問いが的外れだった。

621:名無しさん@お腹いっぱい。
08/05/21 13:31:02
>>620
えーと、ということは、

>こちらに関していえば、「あり得る」で問題ないですよね。
>ログ出力をどう指定するかとはまったく無関係に。

これを否定するってことですか?
ログの指定ってのは、発生した現象を記録するかどうかの違いだけで、
その現象が発生するかどうかとはまったく無関係だと思うんですが。

それともアレですか、バグのあるプログラムのあやしそうなところに
printf をつっこんだらバグが再現しなくなったとかいうのを
日常的にやってる方なんでしょうか?

622:名無しさん@お腹いっぱい。
08/05/21 13:34:29
>>619
「ゆとり」恐るべし。
字面をなぞるだけでは、質問の意図するところはわからんよ。

後半とあわせて読めば、>>576の状況は
・クライアントがデータが取得できていない(ように思える)
・でもアクセスログでは正常に転送したことになっている。

そこで、>>576はアクセスログの記録タイミングを疑って
> すいません。apacheのアクセスログの
> 書き込みタイミングっていつなんでしょうか。
という質問をしたわけだ。
質問が「アクセスログが残っているのですが、これ本当ですか? 実際には
転送されていないのでは?」であることは明白。

%b %O両方とれば、
1 (apacheから見た)クライアントのプロトコルスタックまではデータ転送が完了している。
2 コネクション切断等の原因で転送が中断された。
のいずれかであることがわかるので障害の切り分けができる。

623:名無しさん@お腹いっぱい。
08/05/21 13:39:15
>>621
>>620 != >>617なので勘違いしないように。

624:名無しさん@お腹いっぱい。
08/05/21 13:39:42
>>617
応用力?w

それなら
%X 応答が完了したときの接続ステータス
を使うから、mod_logioをその目的に使おうなんて思わないんだよ。
だから誰もお前の「応用」を理解できないんだよ。

それにそもそも質問者に対する答えになってないだろ>>579は。

625:620
08/05/21 13:46:19
>>621
否定も肯定もしないよ。
>>619 の前半に答えただけ。

626:名無しさん@お腹いっぱい。
08/05/21 13:47:05
っていうか、よく見たら

>%b 転送する予定のバイト数
>%O 転送したバイト数

これ思いっきり嘘じゃねーか。

%b response body だけのバイト数
%O header 込みの総バイト数

どっちも実際に転送したサイズで、転送する「予定」のバイト数ではない。
つーか、CGI みたいにリクエストを受けてから動的に生成してるページの
「転送する予定のバイト数」をどうやってログに載せるんだよ。

627:名無しさん@お腹いっぱい。
08/05/21 14:12:20
>>624
後出し乙。後出しといわれたくなかったら、別スレでお前が自分で
言ってたようにmd5貼っとけば良かったのに。www

>>626
ウルトラ初心者は黙ってろよ。

> どっちも実際に転送したサイズで、転送する「予定」のバイト数ではない。
>>589でも引用している。
> httpd 2.0 では 1.3 とは異なり、%b と %B フォーマット文字列はクライアントに
> 送信されたバイト数そのものではなく、 HTTP レスポンスのバイト数です (これら

> つーか、CGI みたいにリクエストを受けてから動的に生成してるページの
> 「転送する予定のバイト数」をどうやってログに載せるんだよ。
apacheが一旦受け取ってバッファリングしている。
お前は知らないだろうが、HTTPレスポンスメッセージにはステータスラインが必須なのだが、
Apacheが裏でつけてくれている。
お前のようなウルトラ初心者が作ったCGIの出力を正しいHTTPレスポンスメッセージにするた
めにApacheは頑張ってるんだぞ。

628:名無しさん@お腹いっぱい。
08/05/21 14:37:22
後出し?別スレ?md5?
もういいよ

629:名無しさん@お腹いっぱい。
08/05/21 15:42:01
>628
お前の負けーwwwwwwwwwww

630:名無しさん@お腹いっぱい。
08/05/21 16:39:10
劣悪な通信環境化でのサーバ・クライアントのやり取りを見ているみたいだw

631:名無しさん@お腹いっぱい。
08/05/21 16:44:17
以上、本試合は「最後にしゃべった方が勝ち」ルールでお送りしました。

632:名無しさん@お腹いっぱい。
08/05/22 15:57:46
apache-2.2.8 をインストールしました。
httpd.confにて、
DocumentRoot "/usr/pkg/share/httpd/htdocs"
を、
DocumentRoot "/www/htdocs"
に変更しました。(/www/htdocsは作成し、index.htmlも作成しました。
そして、apacheを再起動してアクセスすると
Forbidden
You don't have permission to access / on this server.

と表示されてしまいます。

何が原因かわかりません絵ででしょうか?

上記以外の修正点は、
ServerAdmin と ServerNameだけです。



633:名無しさん@お腹いっぱい。
08/05/22 16:06:39
777にでもしてみ

634:名無しさん@お腹いっぱい。
08/05/22 16:12:28
/www/htdocs に対し、GroupとUserで指定した実行ユーザのアクセス権限がない
→ディレクトリのパーミッションを調べる

/www/htdocs に対し、ディレクティブで許可指定が無い
→とりあえず<Directory /usr/pkg/share~> とかいう部分を/www/htdocsに書き換えてみる

最低の対策としては、多分このへんでは。

635:632
08/05/22 16:19:42
ありがとうございます。
解決できました。

DocumentRootだけを変えていたのですが、cgi-binやerrro, iconsも同じパスに変更し、
もとのDocumentRootの中身をすべてコピーすればできました。

お手数をおかけいたしました。

636:名無しさん@お腹いっぱい。
08/05/22 16:30:42
777のままにしとくなよ。

637:名無しさん@お腹いっぱい。
08/05/23 05:25:35
mod_proxy 使って、クライアント→SSLproxy化サーバ→WEBサーバ
というようにSSLアクセスさせたいのですが、
この場合に、
ログの管理上、
WEBサーバにクライアントのIPを直に残させることは可能なのでしょうか。


638:名無しさん@お腹いっぱい。
08/05/23 07:13:32
XAMPP for Windowsでローカル用にApache 2.2.8を動かしているのですが、
ちょっと困ったことがあり、御助言を頂きたく思います。

USBメディアにて異なる環境にてapacheを使えるようにしているのですが、
httpd.conf(実際には httpd-vhosts.conf)の、<VirtualHost *> の DocumentRoot 指定に
存在しないドライブを指定すると、
Syntax error on line 80 of (インスコしたディレクトリ)/xampp/apache/conf/extra/httpd-vhosts.conf:
DocumentRoot must be a directory
と言われてapacheが起動しません。

環境によって場合分け、もしくは、存在しないドライブを指定しても(無視して)起動できるようにする方法はありませんでしょうか?

結局のやりたいこととしては、家の環境と作業場の環境のsambaで割り当てたドライブ(家の環境には存在しない)で、
共通の方法で運用したいということです。

639:638
08/05/23 07:28:59
バージョンを書き忘れてました。
Server version: Apache/2.2.8 (Win32)
XAMPP Version 1.6.6a
です。

補足なのですが、他のバーチャルホストの設定などの共通の設定もたくさんあるため、
できれば、apacheなどを2つわけてインストールをしたくないということです。

640:名無しさん@お腹いっぱい。
08/05/23 09:14:32
>>637
proxy→web鯖 の際、mod_proxyの機能として、
X-forwarded-For
というヘッダがリクエストに挿入されるので、それをログに記録すればよい。
あるいは、mod_rpafを入れればHostが上書きされるのでログも変わる。

641:名無しさん@お腹いっぱい。
08/05/23 09:15:41
場合わけで使えそうなのは IfDefine かねえ。
URLリンク(httpd.apache.org)

642:名無しさん@お腹いっぱい。
08/05/23 10:29:19
自宅パソコンの中身を同じ風味にすれば良いかと
ドライブレター変えるとかエイリアス作るとか

643:638
08/05/23 13:28:38
>>641
いけますた!!

次のレスのようなWSHを書いて、

<IfDefine WorkMachine>
  <VirtualHost *>
    DocumentRoot ないドライブを含むパス
    :
    :
</IfDefine>

みたいに、httpd.conf(httpd-vhosts.conf)に書いておけばばっちりでした。

644:638
08/05/23 13:29:06
でっち上げたWSHです。

MachineNameForWork = 'RED';

function IsMachineForWork() {
  return WScript.CreateObject("WScript.Network").ComputerName == MachineNameForWork;
}
function GetApacheArgs() {
  return IsMachineForWork() ? " -DWorkMachine" : "";
}

var args = WScript.Arguments;
var shell = WScript.CreateObject("WScript.Shell");

var isStopMode = (args.length == 1 && args(0) == 'stop');

// stop process
shell.Run('apache_stop.bat', 0, true);
if (isStopMode) {
  // if mysqld is not booting, beep onn urusai!!
  shell.Run('mysql_stop.bat', 0, true);
  WScript.Quit();
}

WScript.Sleep(1000 * 3);


// run apache etc...
shell.Run('apache\\bin\\apache.exe' + GetApacheArgs(), 0, false);
WScript.Sleep(1000 * 1);
shell.Run('mysql\\bin\\mysqld --defaults-file=mysql\\bin\\my.cnf --standalone', 0, false);

645:638
08/05/23 13:30:56
>>642
アドホックに行くならば環境の方を変えてしまうのもアリですね。


無事解決いたしました。
ご協力くださりありがとうございました。

646:名無しさん@お腹いっぱい。
08/05/23 14:52:57
FreeBSDでApache2.2.8で存在しないディレクトリをDocumentRootに設定したら
Warning: DocumentRoot [/usr/home/user1/www/vh/virtualhost1/] does not exist
って警告が出るけど普通に起動するね。
存在しないドライブだとエラーになるのか…。バグ報告出すかね。

647:名無しさん@お腹いっぱい。
08/05/23 21:29:59
>>646
まずソースを読んで、意図的なのかバグっぽいのか判断してみては?
メインのDocumentRootだとエラーで、<VirtualHost> だったら警告のみ、とかって
いう風になっている可能性もあるし。いきなりバグ報告されても萎えると思う。
# 漏れは読んでない。ごめん。

648:名無しさん@お腹いっぱい。
08/05/24 01:02:19
すいません、以前アドバイス頂いた>>507です。
チラシの裏みたいで恐縮ですが、その後の快調になりました。ありがとうございます。

今回いろいろ蓄積してきたルールを整理しようとしているのですが、
httpd.confに
<IfModule mod_limitipconn.c>
ExtendedStatus On
<Directory "/var/www/example/*/example">
<FilesMatch "\.(zip|lzh|rar|sit|tgz)$">
MaxConnPerIP 2
</FilesMatch>
</Directory>
</IfModule>
...
<IfModule log_config_module>
...
SetEnvIf User-Agent "(bad-agent1|bad-agent2 ...)" robots
...
SetEnvIf Referer "example.jp" ref_ok
SetEnvIf Referer "^$" ref_ok
</IfModule>

649:648続き
08/05/24 01:03:14
そしてhttpd-vhosts.confに
<Directory /var/www/example/*/example>
<FilesMatch "\.(zip|rar|lzh|sit|tgz)$">
Order deny,allow
Deny from env=robots
Allow from env=ref_ok
</FilesMatch>
</Directory>

としている箇所がありますが、limitは効いて503を返すのですが、アクセスログを見るとuser-agentで弾けてないのに気づきました。
前はSetEnvIFでの環境変数の設定はしてずにRewriteルールで403を返すようにしていました。
これはルールの適用順の問題なのかアドバイス頂けますと助かります。

で、前述のとおりログを見て気づき、修正できるまでRewriteとSetEnvIfはコメントアウトして、同一ipから503を返した回数に閾値を設定し、超えたユーザは問答無用でiptablesに突っ込んでいます。
なるべくiptablesをしょっ中更新したくないので、apache側で出来ないかと思いました。
もし、私の設定単純ミスでしたらお詫びします…宜しくお願いします。

650:名無しさん@お腹いっぱい。
08/05/24 04:56:52
複合条件だから難しいなw こんな感じかな?

SetEnvIf User-Agent "^bad-agent1" robots
SetEnvIf User-Agent "^bad-agent2" robots
SetEnvIf Referer "^.+" ref_ng
SetEnvIf Referer "^URLリンク(example\.jp)" !ref_ng
Order allow,deny
Allow from all
Deny from env=robots
Deny from env=!ref_ng

Referer のとこに補足すると、まず Referer 値があったら ref_ng という
拒否前提のフラグを立てておいて、それが許可される Referer だった場合には
ref_ng のフラグを解除する。Referer 値がないときは ref_ng が立たないから
アクセスは許可される。

これ以上に条件が増えると難解になるだけなんで、素直に mod_rewrite で
設定した方が良いと思うです。

651:名無しさん@お腹いっぱい。
08/05/24 05:01:13
閾値の件については、apache で処理させてたら意味ないな。
503 を返そうが 403 を返そうが、リクエストが httpd にまで到達していることに
変わりはないので、処理コストの若干の違いはあれど同じこと。

ログを定期的に見て、IP アドレスを iptables に追加するスクリプトでも
書いたほうが早いかと・・・・

652:名無しさん@お腹いっぱい。
08/05/24 05:03:35
>>650
度々すんませんorz 修正・・・
× Deny from env=!ref_ng
○ Deny from env=ref_ng

653:648
08/05/24 07:35:29
おはようございます。
朝までチューニングして眠たい>>648です:-)

>>650
ありがとうございます。ご参考にさせて頂きます。
やはりRewriteでやった方がいいでしょうか…。
別件ですが、limitも完璧ではないので、悪質なユーザになると1秒間に10以上のアクセスを掛けてきます。

>>651
ありがとうございます。一応1行野郎スクリプトで15分おきにログを見させて、閾値を超えたipをiptablesの設定スクリプトで拾ってはいるのですが…。
ただ、その更新中には全てのアクセスに一時応答しないラグが出るので(3~5秒)、その際に嫌われないか思案中でした。
他の監視スクリプトもドンピシャリタイミングで動くとポート開いてネーヨ(゚Д゚)ゴルァ!!されるので、微妙にタイミングをずらしています。

…と書いてて気づいたのですが、激しく板違いでしたでしょうか…。

654:648
08/05/24 09:50:39
殆ど>>650さんのを参考に稼働させると
limitで弾く前に評価され(当たり前なのかも知れませんが…すいません)、robotsと設定されたツールでアクセスされると403が返り、たまにこぼしていたlimitもより希望に沿う形となりました。
そこから若干変更を加え、SetEnvIfNoCaseに変更してある程度のツール系は遮断。
そこからブラウザのマッチ評価、そして同時接続数の評価へと改良しました
やはり過度なアクセスがあるとlimitはこぼしてしまうので、完璧とは言えませんが基本ポリシーを満足させるものに近づきました。

なにせほぼ嫌がらせとしか思えないほど(今も)朝から凄まじいアクセスをしてきているので、気分はヌッ殺したいところです。( ´ー`)y-~~
ここ4日間で54万アクセス(503)ですので…。

mod_rewriteはもうちょっとしっかりとお勉強します。

655:名無しさん@お腹いっぱい。
08/05/24 14:58:44
>>653
> …と書いてて気づいたのですが、激しく板違いでしたでしょうか…。

個人的にだけど、Web 鯖へのアタックや過剰アクセスから守る方法として
一般論(?)が展開されるなら、このスレでも間違っていないと思いますお。

656:名無しさん@お腹いっぱい。
08/05/24 15:26:44
ipってゆうな。クズ。

657:名無しさん@お腹いっぱい。
08/05/24 16:28:09
テリー乙

658:名無しさん@お腹いっぱい。
08/05/24 20:10:23
perl-5.8.8nb7 Practical Extraction and Report Language
ap22-perl-2.0.4nb1 Module that embeds a Perl interpreter into Apache
をインストールしました。

apache2 の起動はできるようになったのですが、mod_perl の使い方が分かりません。
どのように設定すればいいでしょうか?

659:658
08/05/24 20:15:15
apache2はモジュールの読み込みが必要無いんですね

660:名無しさん@お腹いっぱい。
08/05/25 00:16:43
>>658
使い方が分からないなら今から覚えるな。バッドノウハウになりかねん。
まず SpeedyCGI で、次に FastCGI を覚える方がいいよ。

661:名無しさん@お腹いっぱい。
08/05/25 20:10:35
>>657
はあ?俺はテリーじゃねえしww
つーかおまえらテリー乙テリー乙って馬鹿の一つ覚えみたいに言ってるけど
テリーにもファンがいるってことを認めたくないだけだろww
現実見ろよwwwwwwww

662:名無しさん@お腹いっぱい。
08/05/25 20:20:27
テリーは目がいってるよ、こわいよお

663:テリーファン
08/05/25 22:37:35
みんなテリーのことを悪く言いすぎだと思います。
一人で旅をするのはとても勇気がいることです。
武闘家にならずにバトルマスターになれるのもテリーしかいません。
もっとテリーを評価してあげてほしいです。
よろしくお願いします。

664:名無しさん@お腹いっぱい。
08/05/28 09:28:35
すみません質問です
apacheからperlやphp等を実行する場合、実行権限ってどうなるんでしょうか?
試しにドキュメントルートより上の階層を見に行くスクリプトを組んで実行してみると難なく見えてしまいました

ユーザー1であれば user1/ 以下の階層のみアクセス可能にしたいのですが、
そういった設定はapache側から行うんでしょうか?

apacheのバージョンは2.2.3です

665:名無しさん@お腹いっぱい。
08/05/28 09:40:34
PerlもPHPも、Apacheの実行権限で動く。
(CGIのsuexecは除く)

そして、Apacheから呼ばれるPerlもPHPも、ドキュメントルートは知ったことではない。
その辺は所有者やパーミッションをうまく設定するしかない。
suexecもその一環で使えると思う。そういう意味ではApache側からできるっちゃできるが。

PHPはセーフモードと言うのがあって、そういうことが出来るらしいが、俺は良く分からない。

666:名無しさん@お腹いっぱい。
08/05/28 09:48:31
そういう人は、jail+chrootで幸せになれると思うよ。

667:名無しさん@お腹いっぱい。
08/05/28 10:22:51
Windowsの場合はログインしてるユーザーなのかな
jailはBSD以外でも言うのかな

668:名無しさん@お腹いっぱい。
08/05/28 14:03:26
早速ありがとうございます!

chrootコマンドだとユーザーが複数いる場合は難しいですよね?

jailって、要するにvirtualPCとかvmwareとかと同じ仮想OSの事でしょうか
使ってるlinuxはCentOSなので、OpenVZって言うのが見つかりました
調べてみると、仮想OSを複数作ってもカーネルは1つでいいようです

結局、この仮想OS上でユーザーごとに別途サーバーを構築して
仮想OSごとにchrootするということでしょうか

もしそうだとすれば相当面倒ですね^^;ポートは共有できるんでしょうか
たとえばレンタルサーバーとか、いちいちそんなことをしてるんですか?

669:名無しさん@お腹いっぱい。
08/05/28 15:48:14
ニャース・ΜL キテガイリスト 28人目
スレリンク(unix板)
ニャース・ΜL キテガイリスト 28人目
スレリンク(unix板)
ニャース・ΜL キテガイリスト 28人目
スレリンク(unix板)
ニャース・ΜL キテガイリスト 28人目
スレリンク(unix板)
ニャース・ΜL キテガイリスト 28人目
スレリンク(unix板)
ニャース・ΜL キテガイリスト 28人目
スレリンク(unix板)
ニャース・ΜL キテガイリスト 28人目
スレリンク(unix板)

670:名無しさん@お腹いっぱい。
08/05/28 16:33:32
レンタルサーバーは普通CGIはsuexecかね
PHPは知らん

671:名無しさん@お腹いっぱい。
08/05/28 22:24:51
やるとしたらフロントにプロキシ立ててNameBaseでポート別立てしたバックのapache叩く感じかなぁ
起動オプションでコンフィグファイル切り換えればpidファイルもユーザーも切り換えて複数のapache立てられる

そもそも、そんな運用は却下するかな

672:テリーファン
08/05/28 22:37:39
>>664
apache では何の制限もできないし、そのためだけにユーザ毎に chroot するのはちょっと無駄。

お互いのホームディレクトリを不可侵にしたいのであれば、各ユーザを同一グループ(users 等)に
所属させて、各ホームディレクトリを 0705 の permission に設定することで、ほとんどの場合問題ない。

/var/log とか見せたくないディレクトリは 0750 にすればいいし、ファイルアクセスはさせたいけど、
ディレクトリの中を見られたくない場合は 0751 すればいい。

レン樽鯖はこんな程度だと思われ。

673:名無しさん@お腹いっぱい。
08/05/29 13:48:00
apacheをインストールしたのですがstartを押すとThe requested operation has failedと出てきて起動できません。
解決方法をよろしくお願いします。




674:名無しさん@お腹いっぱい。
08/05/29 15:09:35
早くしてください



675:テリーファン
08/05/29 16:46:14
              ,,,,,,iiiiiiiiiiiiiii,,,,,,
         ,,,iilllllll!!!l゙゙゙゙~~゙゙!!llliiii,,,
        ,,illlll!゙゙’: :     : ::゙゙!lllllli,,
       ..,illlllllll″       : :;lllllllllli,
      .,illlllllll!!′        : ;::゙lllllllli,
      :lllllllll゙..,,,,,,,,,,ii   : .i,,,,,iii,,::゙lllllllll、  
      .lllllllli,il!!!゙゙゙゛: :   : `゙゙゙゙゙!",llllllllll:
      .lllllllll!: l!!○llト:,..,,:.ll○l!ll.:!lllll!゙゙
       !llll!’:  :  ,,’ ’ : : :  .:llllll°  
          ,llllii,   ll,,,、 ,_,,i、   ll'llll:   
        ゙ll,l゙li..i、: : ``: ~゙°..",,.,l!|ll゙:    
           ゙l,.゙ト 'lトェェェェェェイフ`゚,lll°
            ゙ll,,.', `゙゙`''''''゙゜ ||,,il!゙`
            ,,l!ili,:      ,iliill,、
      ._,,,,,iiillll;:゙!llil,,,,、.._,,,,ll!゙゙.ll!llii,,,_
 _,,,,,,iiiiiiilllllllllllllllllll,::”`.゙゙゙゙゙゙゙゙″: .:l゙lllllllllllliiiii,,,__
lllllllllllllllllllllllllllllllllllllll:        : ,lllllllllllllllllllllllllllliiiiii,,,,,、

676:名無しさん@お腹いっぱい。
08/05/29 16:57:22
>>673 httpd.confの編集ぐらいしれ

677:名無しさん@お腹いっぱい。
08/05/29 16:57:24

ふざけないでくださいな。

できれば今日中に回答ほしい。勉強が進まない。

678:名無しさん@お腹いっぱい。
08/05/29 16:58:29
>>676
あ、すみません。
それは編集しました。


679:名無しさん@お腹いっぱい。
08/05/29 16:59:58
ウホw 2秒後にレス来たのかと思って焦った
error_log見たら? そのメッセージだけじゃ分からん

680:名無しさん@お腹いっぱい。
08/05/29 17:00:59
>>679
どこにあるんですかそんなの?
start押したら>>673のエラーメッセージが出るのですが?

681:名無しさん@お腹いっぱい。
08/05/29 17:02:47
ボットよけに特定のURLにアクセスがあったらそのIPからのアクセスを全部遮断したいんですが、なんかうまいことやる方法ありますか?

682:名無しさん@お腹いっぱい。
08/05/29 17:06:52
>>680
OSの種類とバージョン、apacheのバージョンとインスコ方法を記しなさい

>>681
<Directory "/path/to/there">
 Deny from ....
</Directory>

683:名無しさん@お腹いっぱい。
08/05/29 17:09:14
この手のは相手しない方がいいよ。

684:名無しさん@お腹いっぱい。
08/05/29 17:10:13
>>680
winXP pro
apache 2.0.54
普通にインストールしました。

685:名無しさん@お腹いっぱい。
08/05/29 17:16:36
>>684
なるほどね
ネット関連のカテゴリに自宅サーバ板があるんで、そっち行ってちょーだい
スレ違いでございます

686:名無しさん@お腹いっぱい。
08/05/29 17:17:14
>>685
ここapacheのスレだろ?
頭大丈夫か?

687:名無しさん@お腹いっぱい。
08/05/29 17:22:58
ここはUNIXの板だよ。
頭大丈夫?

688:名無しさん@お腹いっぱい。
08/05/29 17:23:48
どうでもいいからapache教えてくださいよ

689:名無しさん@お腹いっぱい。
08/05/29 17:24:19
テリー乙

690:名無しさん@お腹いっぱい。
08/05/30 00:26:06
「start押す」って何かと思ってたw


691:名無しさん@お腹いっぱい。
08/05/30 00:31:41
ふと思ったけど、Linuxのユーザーと、Apacheのユーザーってどっちが多いかな?

692:名無しさん@お腹いっぱい。
08/05/30 02:05:19
Apacheじゃないかな。LinuxユーザならApache入れてる人そこそこいるだろうし、某メーカがApacheを
録画予約制御用にWindowsパソコンにプリインストールしてたりするし。

693:名無しさん@お腹いっぱい。
08/05/30 09:24:50
>>669
何でもかんでもコピペしてんじゃねえよクズ、今すぐビルから飛び降りて死ねやwwww

妄想爆裂発狂中のキチガイは今すぐ死ねwwwwwwwwwwwwwwwwwwwwwwwww
どうでもいいんだよカス
早く死んでおけよwwwwwwwwwwwwwwww

いいから今すぐに死ねwwwwwwwwwwwwwwwwwwwwwwwwww


なんで精神病院に逝けないの?いいから死ねよもうwwww









完全に壊れたキチガイ猿は今すぐに死ねwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

694:名無しさん@お腹いっぱい。
08/05/30 19:37:02
apache geronimoなんですけど、他サーバのgeronimoを自サーバに丸々コピー(クローン)
したいんですけど、設定等何か注意することはありますか?

ディレクトリごと持ってきたのはいいんですけど、他サーバで起動していたシステムが
自サーバではacionエラーで動かなくて困っています・・・

初期設定等何かありますかね?

695:名無しさん@お腹いっぱい。
08/05/31 16:13:11
ドメイン部分を変えずに、別サーバを読み込むことって可能ですか?
DNSを使って
example.jp → サーバA
test1.example.jp → サーバB
なら簡単かと思いますが、
DNSで変更を加えずに
exmaple.jp → サーバA
example.jp/test1 →サーバB
というのは可能でしょうか?
ぱっと思いついたのが、
mod_proxyですが、その他よさそうな方法があったら木盆ぬ


696:名無しさん@お腹いっぱい。
08/05/31 16:23:08
VirtualHost

697:名無しさん@お腹いっぱい。
08/05/31 16:42:51
そりゃmod_proxyしかないな

>>696
質問読んでるか?

698:名無しさん@お腹いっぱい。
08/05/31 16:59:30
mod_proxy で実現できるけど、受け側に絶対パスの制約が出ることに注意。
ここを意識したサイト制作が出来るなら大丈夫かと。

× <a href="/">TOP</a>
○ <a href="../">TOP</a>
× <img src="/img/moe.jpg">
○ <img src="../img/moe.jpg">

さらに Location ヘッダにも影響が出る。Location は絶対パスしか出力できないので、
リクエストの最後に / があるかどうかで挙動が変わってしまう。

GET /test1/moe/ HTTP/1.1
Host: example.jp

↑これは問題ない。

GET /test1/moe HTTP/1.1
Host: example.jp

HTTP/1.1 301 Moved Permanently
Location: URLリンク(test1)

↑リダイレクトで変なところへ誘導されてしまう。

結論としては、あんまりオススメできる方法じゃあないですね・・・・

699:698
08/05/31 17:11:26
訂正です。以下の文は関係ないので無視してくださいorz
> Location は絶対パスしか出力できないので、

700:名無しさん@お腹いっぱい。
08/06/02 01:20:15
質問があります。
現在ApacheとPHPを一緒に動かしているのですが、アイドル状態の子プロセスが死なず、また、
レスポンスが返ってこなくて困っています。
 現象:
  1Apacheの起動後、PHPアプリを起動
   このときは問題なく表示されます
  2ブラウザのリロードボタンを何度か(約8回)押します
   このときに、レスポンスが全く返ってきません。また、ブラウザの停止ボタンを押してプロセスをアイドル
   状態にしても、MaxSpareServersで設定した子プロセス数までプロセス数下がりません。

701:700
08/06/02 01:20:56
>>700 です。
利用しているApacheとPHPのバージョンとコンパイルオプション、Apacheの設定を載せます。
 PHPのバージョン: 5.2.5
  ./configure --prefix=/usr/local/php-5.2.5 -with-apxs2=/usr/local/httpd/bin/apxs \
        --enable-mbstring --enable-sockets --with-zlib-dir=/usr \
        --with-jpeg-dir=/usr --with-png-dir=/usr --with-gd \
        --with-mcrypt=/usr/local/libmcrypt-2.5.8 --enable-pcntl \
        --with-mysql=/usr --with-libxml-dir=/usr/local/libxml2-2.6.27 \
--with-gettext=/usr \
 Apacheのバージョン: 2.2.8
  ./configure --prefix=/usr/local/httpd-2.2.8 --enable-ssl --with-ssl=/usr/local/openssl-0.9.8g \
        --enable-suexec --enable-so --with-mpm=prefork --with-apr=/usr/local/apr-httpd/ \
        --with-apr-util=/usr/local/apr-util-httpd/ --with-suexec-caller=www
 Apacheの設定:
  <IfModule mpm_prefork_module>
   StartServers 5
   MinSpareServers 5
   MaxSpareServers 10
   MaxClients 150
   MaxRequestsPerChild 10000
  </IfModule>
  Timeout 60
  KeepAlive On
  MaxKeepAliveRequests 100
  KeepAliveTimeout 5
 使用ブラウザ: Firefox 2.0.0.14、Opera9.27

長くなってしまいましたが、何か原因が分かればお願いします。

702:700
08/06/02 02:04:01
>>700 です。
すみません。自己解決しました。
原因は、パイプから渡されてきたアクセスログを処理しているスクリプトでした。

次のログが延々と吐き出されていました。
 piped log program '/var/www/bin/syslog_accesslog.php' failed unexpectedly
 /usr/bin/env: php: No such file or directory
そしてスクリプトは次のようになっていました。PHPが見えてなかっただけでしたorz
 #!/usr/bin/env php
 <?php
 while(!feof(STDIN)) {
  $access_log = fgets(STDIN);
  syslog(LOG_NOTICE, $access_log);
 }
これを以下のように書きなおして問題解決しました。
 #!/usr/local/php-5.2.5/bin/php
 <?php
 while(!feof(STDIN)) {
  $access_log = fgets(STDIN);
  syslog(LOG_NOTICE, $access_log);
 }
すみません。お騒がせしました。

703:名無しさん@お腹いっぱい。
08/06/02 03:39:46
乙です。余計なお世話かもしれないけど、syslog 送りにしたいだけならこれで行けそうな・・・
CustomLog "| /usr/bin/logger -t httpd -p daemon.notice" myformat

704:700
08/06/02 17:19:58
>>703

それで行けました!わざわざ書く必要ありませんでしたね
ありがとうございます!

705:名無しさん@お腹いっぱい。
08/06/03 22:07:36
すいません
もしかしてServerLimitってgracefulじゃ反映されないの?
512にしても最大256で頭打ちのまま…

706:名無しさん@お腹いっぱい。
08/06/03 22:19:41
ServerLimitはgracefulどころかrestartでもだめで、stop⇒startじゃないとだめ
マニュアル読んでくれよ…
と思ったが、日本語訳がおかしいなorz

URLリンク(httpd.apache.org)
「再起動中にこのディレクティブを変更しても無視されますが、 MaxClients は再起動中に修正することができます。」

マニュアル読まない人が多いのって、やっぱわかりづらいからなのかな?
食わず嫌いだったら悲しいけど

707:名無しさん@お腹いっぱい。
08/06/03 22:22:58
>>706
てんきゅー!
ServerLimitのマニュアルはざっと読んだんだけど反映のさせ方がいまいち分からなかった
訳が変だったのね…

708:名無しさん@お腹いっぱい。
08/06/03 22:25:05
あー、2.2以降だったらgraceful-stop⇒startのほうがいいな
これならgracefulと変わらないしお勧め

709:名無しさん@お腹いっぱい。
08/06/03 22:27:46
あ、もう再起動しちゃった
でもそれも覚えとく
ありがとう

710:名無しさん@お腹いっぱい。
08/06/05 18:09:57
apacheで公開しているあるディレクトリにアクセスしたら、ntopが公開している
別ポートのコンテンツにリダイレクトしようとしています。

アクセスしたURLが
URLリンク(www.example.com)
だったら、
URLリンク(www.example.com:3000)
にリダイレクトするようにしたいのですが、アドレスバーに
URLリンク(www.example.com:3000)」と表示させたくないのです。というのも、
ntopにはブラウザからアクセスしたときの認証の機能がないので、URLを隠蔽し、
必ずApacheのベーシック認証を通し、その後にntopのコンテンツにリダイレクトしたいのです。

mod_rewriteを使って、ブラウザのアドレスバーに
URLリンク(www.example.com)
と表示させたまま、ntopのコンテンツを表示する術はないでしょうか。
ちなみに、mod_rewriteではなくフレームを使う方法では、ntopのURLがバレてしまいます。

この場合のmod_rewriteの記述はどうすればよいのでしょうか。

711:名無しさん@お腹いっぱい。
08/06/05 18:15:19
>>710
mod_proxy かな。

バレたらアクセス可、というのはよくない。
そもそも直接アクセスできないようにしておくべき。
localhost からしか許可しない、とかで。

712:名無しさん@お腹いっぱい。
08/06/05 18:34:04
>>711さん
即レスありがとうございます。
mod_proxyを試してみたのですが、ntopが動的に生成するURLがあったりするので、どうしたものかと頭抱えてます。
静的な画像は、シンボリックリンク張って誤魔化せるのですが、例えば

URLリンク(www.example.com)
にアクセスしようとしても
URLリンク(www.example.com)
になってしまうので、mod_rewriteでURLを書き換えられないかなーと思ったのです。。。


713:名無しさん@お腹いっぱい。
08/06/05 19:51:11
>>712
ntop を起動するときに -w 127.0.0.1:3000 として localhost で listen させる。
とりあえずこれで外部から ntop への接続はできなくなる。
あとは apache で mod_proxy の設定をする。

NameVirtualHost *:80
<VirtualHost www.example.com:80>
 ProxyRequests Off
 ProxyPass / URLリンク(127.0.0.1:3000)
 ProxyPassReverse / URLリンク(127.0.0.1:3000)
</VirtualHost>

試してないけど多分こんな感じで何とかなるかと。URL がずれなくなるから
この方が楽なんじゃないかな。
アクセス制限とか認証とかは <VirtualHost> に対して掛ければ良いかと。

714:名無しさん@お腹いっぱい。
08/06/05 19:53:57
>>710 です。
結局のところ、今までのドキュメントルートにあるコンテンツと混在してたら
mod_rewriteではどんなルールを書いても、「あちらを立てたらこちらが立たず」状態なので、
IPベースでバーチャルホスト立てて、proxyを使うことにしました。。。
これでアドレスバーは誤魔化せましたが、ステータスバーに裏のIPアドレスとポートが出てしまうので
苦労の割には誤魔化しきれなかったり。。。orz



715:名無しさん@お腹いっぱい。
08/06/05 20:03:21

リバースプロキシで一撃じゃないの?

716:名無しさん@お腹いっぱい。
08/06/05 20:14:21
ntop が返す HTML の中のリンクに URL が埋まってる、とかじゃないの?

717:名無しさん@お腹いっぱい。
08/06/05 20:54:17
試してみる元気はないけど、ntop proxy とか ntop mod_proxy で
検索していっぱい出るじゃん。出来るんじゃね?

718:名無しさん@お腹いっぱい。
08/06/05 22:17:57
ntopが出力するhttpデータは調整出来ないの?
サーバー名とかURLとか・・・

719:名無しさん@お腹いっぱい。
08/06/05 23:43:45
>>710です。

どういうわけか、 -wオプションで127.0.0.1:3000を指定したり、
プロキシの転送先を127.0.0.1:3000にしたりすると、

[Thu Jun 05 23:10:04 2008] [error] [client 123.456.789.012] client denied by server configuration: proxy:URLリンク(localhost:3000)

というログが出て接続ができませんでした。

ntopのスタートスクリプトでeth0のIPアドレスを明示的に指定してやって、
バーチャルホストのconfigも、ProxyPass ProxyPassReverse ともにeth0のIPアドレスで
書いてやったら、目的を達成できました。
FireFox2、IE7ともに、裏のIPアドレスとポートを隠蔽してユーザに見せることができました。

あ(・∀・)り(・∀・)が(・∀・)と(・∀・)う!ございます!

720:名無しさん@お腹いっぱい。
08/06/06 06:21:59
>ntopにはブラウザからアクセスしたときの認証の機能がないので

嘘はいかん。doc嫁


721:名無しさん@お腹いっぱい。
08/06/06 06:53:19
裏のIPアドレスとポートにアクセスすると表示されるんでしょ?w
パケットフィルタでもしておいたら

722:名無しさん@お腹いっぱい。
08/06/06 20:34:30
CGI、またはPHPを運用していて、それぞれのスクリプトが管理・ファイルを生成している
フォルダa・b・cがあるとします。
このフォルダ内に生成されるファイルが、外部からURLを手打ちでアクセスできてしまう為
フォルダ内への直アクセスを規制したいのですが
どうすればよいのでしょうか?

723:名無しさん@お腹いっぱい。
08/06/06 20:53:40
上から順番にお勧め

1.フォルダa・b・cをドキュメントルートの外に配置する
2.mod_authz_hostを使ってアクセスを拒否する
3.その中のファイルの末尾を.cgiにする

724:名無しさん@お腹いっぱい。
08/06/06 21:20:23
.htaccessでもいいんじゃん?

725:名無しさん@お腹いっぱい。
08/06/06 21:33:27
レンタルサーバーでもないのになんで.htaccessが出てくるんだ?

726:名無しさん@お腹いっぱい。
08/06/06 22:58:38
レンタルサーバーじゃないと .htaccess 使っちゃいかんの?

727:名無しさん@お腹いっぱい。
08/06/06 23:11:38
.htaccessでやるとパフォーマンス落ちるよ。

728:名無しさん@お腹いっぱい。
08/06/06 23:41:14
「.htaccessを使う」ってのは要するに「設定を変える」ということだけしか意味しない
何の設定を変えるかは全く言及されていない

729:名無しさん@お腹いっぱい。
08/06/07 01:30:13
デフォルト設定で入っている
<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
</Files>
が有効なら、ファイル名/ディレクトリ名の頭に .ht を付けるという手がある。
素直に>>723の1にしておくのが本筋ではあるが。

730:名無しさん@お腹いっぱい。
08/06/07 09:50:30
>>726
使っちゃいけないってことはないけど、conf いじれる root 様は普通は
AllowOverride None だと思う。None 以外に設定するのも萎える。
理由は >>727 の通り。ま、アクセスが少ないサイトなら影響しないけどね。

731:名無しさん@お腹いっぱい。
08/06/07 10:22:53
ただ、大きなファイルをダウンロードさせてるサイトで
WorkerMPM使ってる場合は、graceful restartがきついから
.htaccess使う理由にはなる

732:名無しさん@お腹いっぱい。
08/06/07 11:55:19
>>731
あー、なるほどね。セッションが長い場合は .htaccess の処理コストが
与える影響は低いね。これは盲点ですた。

733:名無しさん@お腹いっぱい。
08/06/14 11:08:16
2.2.9がもうすぐリリース
アナウンスが出てないけど、すでにトップページに表示されてるが

734:名無しさん@お腹いっぱい。
08/06/14 13:10:21
Apache+MySQLでDBを使ったBASIC認証で教えてください。
こんな感じでhttpd.confを設定するとユーザーごとの制御はうまくいったのですが、
DAV svn
SVNParentPath /usr/local/svn/
AuthType Basic
Require valid-user
AuthMySQLHost localhost
AuthMySQLUser apache
AuthMySQLPassword apache
AuthMySQLDB htpasswd
AuthMySQLUserTable user_info
AuthMySQLTableUserName user_name
AuthMySQLTableUserPasswd user_passwd
さらにユーザーグループごとにディレクトリをアクセスできたりできなかったりする設定がうまくいきません。
上の設定に加えて
AuthzSVNAccessFile /usr/local/svn/.svnaccess
AuthMySQLGroupTable user_group
AuthMySQLTableGroupName user_name
AuthMySQLTableGroupGroupName user_group
/usr/local/svn/.svnaccessがこんな感じです。
[groups]
[proj-1:/]
@group-1 = rw
ページを開くと認証を求められますが正しいパスワードを入れても403 Forbidenです。
/var/log/httpd-error.logがこんな感じです。
[error] Internal error: pcfg_openfile() called with NULL filename
[error] [client 192.168.0.1] (9)Bad file descriptor: Could not open password file: (null)
[error] [client 192.168.0.1] Failed to load the AuthzSVNAccessFile: An authz rule refers to group '@group-1', which is undefined
[error] [client 192.168.0.1] Access denied: 'user-1' GET proj-1:/
なにが悪いのでしょうか?

735:名無しさん@お腹いっぱい。
08/06/14 19:59:42
> なにが悪いのでしょうか?
エラーメッセージを読もうとしないキミの性格、またはエラーメッセージを
読めないキミの英語力。

736:名無しさん@お腹いっぱい。
08/06/14 23:29:36
Apache HTTP Server 2.2.9 Released
ってメール来たよ


737:名無しさん@お腹いっぱい。
08/06/15 12:21:55
質問です。
Apacheが落ちたのでerror.logを見たのですが、
落ちた時刻に

[Sun Jun 15 05:00:02 2008] [notice] Graceful restart requested, doing restart
[Sun Jun 15 05:00:02 2008] [emerg] (2)No such file or directory: Couldn't initialize cross-process lock in child
[Sun Jun 15 05:00:02 2008] [emerg] (2)No such file or directory: Couldn't initialize cross-process lock in child
[Sun Jun 15 05:00:02 2008] [notice] Apache configured -- resuming normal operations
[Sun Jun 15 05:00:02 2008] [alert] Child 5617 returned a Fatal error... Apache is exiting!
とありました。

この時刻には手動でGraceful restartをしていないのですが、自動で行われることがあるのでしょうか?

738:737
08/06/15 12:22:51
追記:バージョンはApache/2.0.63です。

739:名無しさん@お腹いっぱい。
08/06/15 12:47:01
時刻がきっかりだしcronでログ処理を走らせてんじゃないの?

740:名無しさん@お腹いっぱい。
08/06/15 18:02:57
ログのローテーションじゃない?

741:名無しさん@お腹いっぱい。
08/06/15 18:05:24
いろんなOSについてるApacheのパッケージはデフォルトで
ログのローテーションで再起動するようになってるよ
時刻が朝の5時だし、間違いないだろう

742:737
08/06/15 18:08:40
>>739-741
レスありがとうございます。
なるほど単なるローテーションでしたか。。。
もうちょっと原因を探ってみます。

743:名無しさん@お腹いっぱい。
08/06/15 19:06:20
>>742
>もうちょっと原因を探ってみます。
もうちょっとも何も。
アドバイスに従ってまずcron設定みなよ。

744:名無しさん@お腹いっぱい。
08/06/15 23:33:19
crontab じゃなくて /etc/logrotate.d/* というオチなんだろうな・・・・

745:名無しさん@お腹いっぱい。
08/06/16 05:36:39
いやnewsyslog.confかもしれん

746:名無しさん@お腹いっぱい。
08/06/16 14:55:46
2.2.9のconfigureで、オプション付けると必ず
configure: WARNING: Unrecognized options:
って出ない?

747:名無しさん@お腹いっぱい。
08/06/16 15:05:26
>>746
ほんとだ
./configure --with-mpm=worker
でやったら
configure: WARNING: Unrecognized options: --with-mpm
configure: WARNING: Unrecognized options: --with-mpm
と。でもmakeしてみるとちゃんとworkerになってる

748:名無しさん@お腹いっぱい。
08/06/16 20:07:54
>>746

同じく。オプションが急に変更になったのかと思ったよ。まともに動いて
るのか不安だな、、、

749:名無しさん@お腹いっぱい。
08/06/17 09:57:34
Apache/2.2.2とFreeBSD6.2で動かしています。
それで、最近Apacheが知らない間にいつも再起動されてて悩まされています。

色々と原因を探った結果、httpd-access.logが100MBに達して、
次のログに切り替わるとき(ログローテーション)に、
必ず落ちます。逆に、それ以外のときには落ちません。

そのような特別な設定をした訳ではないのですが、
この対処法ご存知の方はアドバイスいただけないでしょう?

なにとぞ宜しくお願いします。もう、2ヶ月も悩まされています。

750:名無しさん@お腹いっぱい。
08/06/17 10:51:34
ログ切替えはnewsyslog?
シグナルを送ってhttpdにログファイルを作り直させている?

751:名無しさん@お腹いっぱい。
08/06/17 12:52:38
落ちたならエラーログが出ていそうなもんだけど、どうなのよ?

752:名無しさん@お腹いっぱい。
08/06/17 19:41:38
>>750>>751
アドバイス有難うございます。
確かに、newsyslogからの信号で落ちておりました。
newsyslogの仕様なんですね。助かりました。

ちなみに、これって、落とさずにログを循環させる方法はないのでしょうか?
newsyslog以外でもいいのですが。

753:名無しさん@お腹いっぱい。
08/06/17 20:16:00
>>752
rotatelogsを使ったら?

754:名無しさん@お腹いっぱい。
08/06/17 20:19:28
>>752
ふつー落ちない。設定だか何だかわからんが、どっかの何かがおかしい。
それを解消しなければ、たぶん何を使ってもやっぱり落ちる。

755:名無しさん@お腹いっぱい。
08/06/17 21:13:42
シグナル送らないとhttpdがファイルハンドル放してくれないから、よーわからん状況になるよ
newsyslog.confの編集作業に戻るんだ

756:名無しさん@お腹いっぱい。
08/06/17 21:22:34
>>753-755
いつもすばやいレス有難うございます。

私がした設定は、どこかのサイトの設定を見てこのようにしました。

# vi /etc/newsyslog.conf
/home/hogehoge/log/httpd-access.log 644 100 100000 * Z /var/run/httpd.pid
/home/hogehoge/log/httpd-error.log 644 100 100000 * Z /var/run/httpd.pid

設定のどの辺が変が分かりますか?
>>755さんが書かれていたことを読んで思い出したのですが、
そのサイトにも、httpdにシグナルを送らないとダメだと書いてありました。

757:名無しさん@お腹いっぱい。
08/06/17 21:29:12
すみません。他のサイト検索していたら、30を後につけろ、と書いてありました。
これだけで、大丈夫でしょうか?シグナルの種類があって、30番なら落ちずにログ循環が可能と書いてありました。

/home/hogehoge/log/httpd-access.log 644 100 100000 * Z /var/run/httpd.pid 30

たびたびすみません。

758:名無しさん@お腹いっぱい。
08/06/17 23:56:44
30とか環境依存じゃないの?w 素直にHUPかUSR1にしておけって。

759:名無しさん@お腹いっぱい。
08/06/18 01:37:15
>>757
>>751 >>754を無視かよw
newsyslog とシグナルの関係で落ちてるので間違いはなさそうだが、
デフォルトではSIGHUPが送られるんで、httpdが落ちるのもおかしい。
念のため、VirtualHostじゃないメインのerror_logの該当時刻を確認すべし。

760:名無しさん@お腹いっぱい。
08/06/18 03:03:46
URLリンク(www.jp.freebsd.org)
URLリンク(httpd.apache.org)
んだね再起動する感じだねぇ
いずれにせよ、シグナルで落ちてるんだったら、ログに残るわな

以前自分でやった事あるもんで。はい。
ログファイルを圧縮しちゃったんだけど、プロセスが持ちっぱなしで
見えないファイルがずんどこでかくなるとゆー
/varがいっぱいになったけど、謎!みたいなww

いずれにせよ、どっかのサイト丸写しじゃなくて
その意味する所を把握しれ

761:名無しさん@お腹いっぱい。
08/06/18 09:51:49
>>759>>760
すみません、色々と有難うございます。
無事30のシグナルを送信することで解決しました。
ログが変わってリスタートしませんでした。

ログも見ましたが、確かにシグナルで落ちていました。
もっと仕組みを勉強していきたいと思います。

本当にありがとうございました。

762:名無しさん@お腹いっぱい。
08/06/18 13:58:49
>>761 httpd は SIGHUP で落ちたらおかしいんだよ。そのログ晒してみてくれない?

763:名無しさん@お腹いっぱい。
08/06/18 19:27:56
>>746

2.2.9 buildconf してからconfigure すると、ワーニングが出なくは
なりましたが、、、これでいいのかは不安です。


764:名無しさん@お腹いっぱい。
08/06/18 20:15:23
>>763
ウチでは、fedoraのspec参照に、./configure前に、
autoheader && autoconf 実行しても、やっぱりWARNING出ます。

765:名無しさん@お腹いっぱい。
08/06/19 01:31:23
2.2.9はスルーで。

766:名無しさん@お腹いっぱい。
08/06/19 17:37:43
出力するHTML内に指定のタグが入ってなかったら
強制的に指定のタグ挿入、とかするモジュールなかとですか?

767:名無しさん@お腹いっぱい。
08/06/20 03:42:29
favicon.icoのリクエストが多くて、
403ではじくとエラーログに出力されちゃいますが、
エラーログみるとそればかりで、他のエラーがスゴク見つけにくいです。

favicon.icoの403エラーをエラーログに記録させない方法を教えてくださいませんか?

768:名無しさん@お腹いっぱい。
08/06/20 03:45:33
favicon.icoを置く

769:名無しさん@お腹いっぱい。
08/06/20 08:29:50
grep -v で見ればいいじゃん。

ErrorLog は SetEnvIf 使えないんだっけ。

770:名無しさん@お腹いっぱい。
08/06/20 08:47:15
>>768-769
ご助言ありがとうございます。
当サイトはトラフィックが非常に多く、
favicon.icoを置くと、転送量が増えてしまうため、できれば避けたいです。

grep -vは確かにそうですね。
ただ、できればログに記録したくなくて、
調べたところerrorlogにはsetenvifは使えないようです。
検索エンジンで調べてそう書いてありまし、又自分でもやってみてダメでした。

後からログを綺麗にするしかないのでしょうか。

771:名無しさん@お腹いっぱい。
08/06/20 08:48:31
パイプに渡してがんばる、とか。

772:名無しさん@お腹いっぱい。
08/06/20 09:13:04
>>770
favicon.icoという名前の空ファイルを置いておけば、
転送量は増えない。

773:名無しさん@お腹いっぱい。
08/06/20 09:35:37
>>772
HTTP ヘッダは送っちゃうんじゃない?

774:名無しさん@お腹いっぱい。
08/06/20 09:50:50
どうせリクエストは送られてきて、それに対してのレスポンスも返すんだ。
作っておいてexpireでキャッシュの生存期間延ばしたほうが転送量も抑えられる。

775:名無しさん@お腹いっぱい。
08/06/20 09:51:26
>>773
それはfavicon.icoがなくても同じ。だから、転送量は増えない。

776:名無しさん@お腹いっぱい。
08/06/20 10:05:42
なるほど。

777:名無しさん@お腹いっぱい。
08/06/20 10:26:51
やってます
0byteのfavicon.ico
拗ねちゃうブラウザもいないっぽい

778:名無しさん@お腹いっぱい。
08/06/20 11:39:54
>>763
autotoolsは詳しくないので良くわからんけど、
公式配布のtarを作った人のautoconfが新しすぎた?とか。
自分でbuildconfして警告でなくなったら、それで2.2.8以前と同じ状態になったということだからOK。

ついでにこのバグ報告はあがってるけど対応する気はなさそうだな
こういうバグこそなんとかするべきだと思うんだが
URLリンク(issues.apache.org)

779:名無しさん@お腹いっぱい。
08/06/20 19:34:15
>>778

ありがとう。2.2.9 ひとまずテスト環境では順調です。


780:
08/06/21 19:00:27
Linuxで使用するapacheとWindowsで使用するapacheとでは差異などあるのでしょうか?
バージョンは2.2.8でお願いします。
利点や欠点などもご存じでしたらぜひお願いします。

781:名無しさん@お腹いっぱい。
08/06/21 19:36:28
httpd 単体で考えたときにはあまり差異はないと思う。
何をしたいのか、何を動かしたいのかが重要。

メリット
・LAMP に相当するものは一応揃えられる。
・UNIX 系の知識がないなら OS 管理が楽。

デメリット
・UNIX 系 Apache と比べて情報収集がやや困難。
・サードパーティなモジュールが動作しない可能性がある。
・UNIX 系でよく利用するコマンド、ユーティリティが使えないかも。
・Cygwin であれこれ揃えるならそもそも UNIX で(ry
・OS のスリム化がしづらい。
・.NET とか MS 特有のものは知らん。

782:名無しさん@お腹いっぱい。
08/06/21 23:10:11
MultiViewsでheader.html.jaが自動選択されて内容が表示されているのですが、
HTTPヘッダにContent-Type: text/html;charset=ISO-8859-1が出力されていて
ブラウザで文字化けしてしまいます。
IndexOptions +SuppressHTMLPreamble にして meta で指定しても、
IEはHTTPヘッダを優先するようで文字化けは改善されませんでした。
どうしたら.jaのファイルのHTTPヘッダのcharsetを変えられるでしょうか。

環境
sourceforge.jp のサーバ Apache/2.2.3 (Debian) PHP/5.2.0-8+etch11
.htaccess が使えますが、どこまで許されているかわかりません。

783:名無しさん@お腹いっぱい。
08/06/21 23:25:11
IndexOptions Charset

784:782
08/06/22 00:28:25
ありがとうございます。
<Files でうまく条件分けできなかったためか、.enファイルにもSHIFT_JISが
付くようになってしまったので、.jaファイルもUTF-8にして解決としました。

785:
08/06/22 00:40:39
>>781

ありがとうございます。
何をしたいとか何を動かしたいとかは特に考慮しなくて大丈夫です。
Apache単独での差異が知りたかったので…。

一応書いておきます。linux上でapache・tomcatの連携をします。
windows上での連携と差異はありますか?


786:名無しさん@お腹いっぱい。
08/06/22 07:06:46
連携以前にWindowsで動かすと不安定で落ちやすい

787:
08/06/22 19:15:43
>>786

ありがとうございます。
ってことはLinux上では安定していると受けってもよろしいのでしょうか?

788:名無しさん@お腹いっぱい。
08/06/22 19:21:41
大差ない

789:名無しさん@お腹いっぱい。
08/06/23 02:30:17
十分に安定。

790:名無しさん@お腹いっぱい。
08/06/23 10:36:59
あと、ライセンス関連が違う

791:名無しさん@お腹いっぱい。
08/06/23 16:20:14
質問

CGIゲームの改造をしてるんだが、

「いきなりサーバーにあげないで、
ローカルでテストしてからにしてください」

とよく書いてある。その趣旨はわかるんだが、
自分のパソコンにWEBサーバーをインストールすると
いうのは、自分がなにをしているのかよくわかっていない
場合は、危険な行為ではないのか?

パソコンのハードディスクの中身がすべて
ネットに公開される可能性もあるし、
インストール直後のデフォルトの状態は
結構安全なのか?

公開用のフォルダというものがあって、
そこに入れたものだけが公開されるのか?

792:名無しさん@お腹いっぱい。
08/06/23 16:22:38
よくわかってからやれ。

793:名無しさん@お腹いっぱい。
08/06/23 16:23:56
>>791
>自分のパソコンにWEBサーバーをインストールすると
>いうのは、自分がなにをしているのかよくわかっていない
>場合は、危険な行為ではないのか?

はい。危険な行為です。
そして、その程度の知識の人がCGIを作ることはもっと危険です。
要するに、「自分のPCに、安全にWebサーバーをインストールすることもできない人は
CGIをアップロードしないでください」
ということです。


794:名無しさん@お腹いっぱい。
08/06/23 16:53:45
じゃあ、どうやれば安全なのか、
また、どうした場合には危険なのか、
解説がまとまってるページか書籍を
教えてもらえますか?

また、インストール直後のデフォルトの
状態の安全性はどうなってますか?

インストールして、5分後に自分のPCの
IPアドレスにポート80でアクセスがあったら
パソコンの中身を見られてしまうのですか?

795:名無しさん@お腹いっぱい。
08/06/23 16:55:07
CGIなんてWebサーバーなくたって、直接起動すりゃテストできるだろ

796:名無しさん@お腹いっぱい。
08/06/23 16:59:13
そんなん逐一人に聞かないとわからないような人は
向いてないと思います。

797:名無しさん@お腹いっぱい。
08/06/23 17:41:10
>>791 >>794
煽りじゃなくてマジレスだが、このスレで論議する内容じゃない。
何故なら UNIX/Apache 云々以前の問題であるから。
自宅サーバ板の方が適切な回答を得られやすいと思われ。

798:名無しさん@お腹いっぱい。
08/06/23 19:26:56
インストールするときに、勝手にネット接続を
テストしようとしやがるな。マカフィーが反応した。

799:名無しさん@お腹いっぱい。
08/06/23 19:42:06
アパッチ2だと、最初にインストールして、
localhostをブラウザで表示したとき、

it works!
しか表示されないの?

800:名無しさん@お腹いっぱい。
08/06/23 20:15:27
>>799
待て待て、それはソースからコンパイルしてインストールした時の状態じゃないか?

(Winの)msiバイナリパッケージでinstallした時は、
おめでとうございます。
この計算機で無事Apacheのインストールが完了しました。

云々のページが出るはず。
Linux系のrpmで入れた場合も、ディストリごとのwelcomeページが出るハズだ。
ソースから入れれるくらいの知識があれば、そんなの気にする必要あるか?

801:名無しさん@お腹いっぱい。
08/06/23 20:29:11
>>800
OSはWindows2000で
msiをダウンロードしてインストしただけですが。

なんで自分のページだけ

「あなたの意に反して、、、」

がでないんだろう。

802:名無しさん@お腹いっぱい。
08/06/23 20:39:50
Windows版のApacheは板違いだろうて・・・

803:名無しさん@お腹いっぱい。
08/06/23 21:17:52
>>801
はーん、さては上書きインストールか、以前のバージョン入れてたんじゃないかな?
httpd.confが置き換わらないんで、auto_negoやfiles_matchが正常に効いてないからじゃないか?

>>802
うーん、Win限定の話じゃない時(confや標準moduleの設定とか)は、別にいいんでんね。

804:名無しさん@お腹いっぱい。
08/06/23 21:25:50
OSはWindows2000

win用のアパッチをインストールした。
URLリンク(localhost)
↑これは表示されるようになった。
しかし、
URLリンク(localhost)
これを表示しようとすると
Forbidden

You don't have permission to access /a.cgi on this server.

となってしまう。
おそらく、cgiを表示するパーミッションを与えていない、
というのが原因だと思う。
その設定ファイルは、
httpd.conf
だと思う。

805:名無しさん@お腹いっぱい。
08/06/23 21:32:22
>>804
についてだが、
You will also need to add "ExecCGI" to the "Options" directive
という記述を見つけたので、

Options Includes FollowSymLinks ExecCGI MultiViews

これを入れたら、
You don't have permission to access /a.cgi on this server.
というエラーは出なくなった。しかし今度は、
500 Internal Server Error
になってしまう。

806:名無しさん@お腹いっぱい。
08/06/23 22:02:48
>>805
自己解決した。
単にHTMLで出力してなかった。
HTMLのタグで(<body>とか)ちゃんと
書いたら普通に表示できた。

807:名無しさん@お腹いっぱい。
08/06/23 22:55:54
>>803
インストールなんて思いっきりwin限定の話じゃん。

808:803
08/06/24 00:12:35
>>807
そうかな?
今回の流れでは確かにWinでの話だっけど、インストール自体は別にWinに限った話じゃないじゃん。
>>799の書き込みだけでは、それがWinでの話かどうか断定できないし。

Linux系でもrpmとかあるし、FreeBSDでもportsとかあって、ソースインスコだけとは限らないじゃない。
803で書いたhttpd.conf等のデフォルトファイルの置き換えに絡む話は、WinだけじゃなくLinux系でもpkg_installで出てくる問題だし。
(具体的にどれがどうとかは、確かに各ディストリやパッケージマネージャーに因った話になってしまうけど)

それともここは、ソースインスコに限った話しかしたらいけないのかな?
(自分はWinでもLinuxでも、パーケージからとソースからと両方でインストールしたの混載で使ってる)

809:名無しさん@お腹いっぱい。
08/06/24 01:03:31
バイナリパッケージの話は
別板なり各OS/ディストリのスレなりの方がいいと思うよ。
プラットフォーム固有の話かどうか完全に切り分けできないでしょ。

810:名無しさん@お腹いっぱい。
08/06/24 10:13:08
なんか日記になってる

811:名無しさん@お腹いっぱい。
08/06/27 21:58:22
OSはWindows2000で、

アパッチwin版をこのまえ
インストールしたんだけど、
今は起動してないはずなんだけど、
Windowsタスクスマネージャーで見ると、
プロセスのところで、
httpd.exe
ってのがあるんだけど、これって
自分が気づけてないだけで、実は
httpdが、ようするにアパッチが影で
起動しちゃってるってこと?
どうやって確認すればいいの?

812:名無しさん@お腹いっぱい。
08/06/27 23:18:07
板違い

813:名無しさん@お腹いっぱい。
08/06/28 17:44:02
気違い

814:名無しさん@お腹いっぱい。
08/06/28 17:48:40
人違い

815:名無しさん@お腹いっぱい。
08/06/28 18:29:35
メルコ違い

816:名無しさん@お腹いっぱい。
08/06/28 18:33:13
勘違い

817:名無しさん@お腹いっぱい。
08/06/29 02:09:24
UNIX板で聞いても判る人少ないだろ
サービスとかその辺りじゃね?

818:名無しさん@お腹いっぱい。
08/06/29 12:20:54
UNIX板は誤字の指摘は得意だぞ。
× アパッチが影で
○ アパッチが陰で

819:名無しさん@お腹いっぱい。
08/07/01 15:35:28
アッーパチ

820:名無しさん@お腹いっぱい。
08/07/01 19:40:47
ガチムチHTTPサーバ

いったい何をサービスするのやら

821:名無しさん@お腹いっぱい。
08/07/06 11:30:44
Apache の起源は韓国ニダ

822:名無しさん@お腹いっぱい。
08/07/10 03:21:33
apache2.2+mod_layout5.1で LayoutIgnoreTag が効かない
バグだれか直してくれ。
パッチ誰か出してくれ。
おながい

823:名無しさん@お腹いっぱい。
08/07/19 03:23:10
質問です。
solaris(euc)→fedora(utf-8)へ、webファイルを移動した場合、
自動でそのファイルやフォルダの文字コードが変更されるのでしょうか?

winXP(s-jis)htmlはwebでみる際s-jis設定でこのhtmlをfedora(utf-8)へsambaで移動の場合、
自動でエンコードされてるらしく文字化け無しでした。
移動したhtmlをwebで見るとs-jisで文字が表示してました。
この場合大丈夫でしたが、solaris(euc)からfswikiをfedora8へ移動しても勝手にutf-8に
変更してくれるのでしょうか?



824:名無しさん@お腹いっぱい。
08/07/20 16:55:37
質問です。
apacheって何て言うの?
ソフト?アプリケーション?デーモン?
たぶん全部正解だと思うけど専門家の間では一般的に通常何が正解でしょうか?

825:名無しさん@お腹いっぱい。
08/07/20 17:03:19
うちらは鯖ソフト、と呼ぶことが多いかな。きっと方言だろうから、あんまり確信があっての
呼び方じゃない。システム管理上の会話では、httpd と呼んでる。

826:名無しさん@お腹いっぱい。
08/07/20 17:19:53
普通に、サービスだろ。

827:名無しさん@お腹いっぱい。
08/07/20 17:39:25
普通に、アパッチでしょ。

828:名無しさん@お腹いっぱい。
08/07/20 17:42:44
ハードウェアとの対比で言えばソフトウェアだし
OSとの対比で言えばアプリケーションだし
普通フォアグラウンドで使うプログラムに対比させればデーモンだよな

829:名無しさん@お腹いっぱい。
08/07/20 17:48:44
あえて選ぶなら、ソフトウェアだと思う。
UNIXやLinuxではアプリって言い方しないし(kernel以外全部アプリだし)
apacheのパッケージに入っているのはデーモンやサービスだけじゃないし、
間違いないのはソフトウェア。多分。

830:名無しさん@お腹いっぱい。
08/07/20 17:49:17
よく、「サービスのことを*nixではデーモンと呼ぶ」みたいな言い方する人が居るけど
それって違うよね。

例えば、同じhttpのサービスでも、TUXみたいにカーネル内で動作するものや
IIS6のhttp.sysみたいに(見た目)ドライバのように動作するものもある。
その中で、常駐の方法としてdaemonizeするサービスのことをデーモンと呼ぶだけ。

831:名無しさん@お腹いっぱい。
08/07/20 17:53:23
で?

832:名無しさん@お腹いっぱい。
08/07/20 18:09:41
apache(の主機能)はサービス。
デーモンと呼ぶ奴はアホ。

833:名無しさん@お腹いっぱい。
08/07/20 18:10:54
やば、絶対反論が来るのが予想できる。

834:名無しさん@お腹いっぱい。
08/07/20 22:44:46
漏れもサーバソフトだなぁ。ただまぁ、世間的にはミドルウェアと
呼ばれてしまっていることが多いね。ハァ?と思うが、ミドルウェアらしい・・・・・・・

デーモンっつーのは、httpd(8) などのプロセスの元になるプログラムや、
常駐するという意味での実行形態をを指してると思う。

835:名無しさん@お腹いっぱい。
08/07/21 11:08:39
サービスっていうと、何かを提供するものってイメージかなー
私の周りだと、Webサーバソフトかな。

836:名無しさん@お腹いっぱい。
08/07/21 11:38:53
>>834
ミドルウェアで違和感無いんだけど、逆にミドルウェアという守備範囲は何を指すの?

837:名無しさん@お腹いっぱい。
08/07/21 14:24:01
マジでミドルウェアって呼ぶコミニティってあるの?
普通にサーバアプリ、デーモンじゃないの?

apacheがミドルって、どことどこの層のミドルを指すんだよ。
スタンドアロンでも当たり前に動作されているだろうよ。

838:名無しさん@お腹いっぱい。
08/07/21 14:32:55
スタンドアローンで動いてるミドルウェアはたくさんあると思うが?

839:名無しさん@お腹いっぱい。
08/07/21 14:33:38
apacheは紛れもなくミドルウェアであるけど、開発側がそれをいうことはあまりないだろうがなw


840:名無しさん@お腹いっぱい。
08/07/21 14:37:33
>>832
うむ。
Postfixデーモンっていったら、間違いなく笑われるよね。

841:名無しさん@お腹いっぱい。
08/07/21 14:52:54
Webプログラマーからみたらミドルウェア。

842:名無しさん@お腹いっぱい。
08/07/21 15:25:03
>>837
コミュニティは知らんが、会社ではミドルウェア呼ばわりされてる。
下はOS、上に載っかるのはWebアプリや静的コンテンツだな。

843:名無しさん@お腹いっぱい。
08/07/21 16:05:21
ミドルウェア apache とかでググって見れば分かるぞw
postfix やら bind やら RDBMS やら、みーんなミドルウェアさ。

844:名無しさん@お腹いっぱい。
08/07/21 16:27:28
OSでもなくてフロントエンドアプリでもなければ
とりあえずミドルウェアって呼んどくのかなあ
アンチウイルスとか監視系は別なのかな

845:名無しさん@お腹いっぱい。
08/07/21 16:41:29
クロスプラットフォームのためのライブラリなんかも、ミドルウェアだな。

846:名無しさん@お腹いっぱい。
08/07/21 16:46:38
perl とか php でつくった掲示板とかはなんて呼ぶの? Webアプリケーション?

847:名無しさん@お腹いっぱい。
08/07/21 16:52:57
Webアプリケーションってのに慣れるのも時間がかかったな

848:名無しさん@お腹いっぱい。
08/07/21 16:53:16
CGI(笑)

849:名無しさん@お腹いっぱい。
08/07/21 20:49:57
>>846 底辺アプリ

850:名無しさん@お腹いっぱい。
08/07/22 07:12:35
>>824の質問に対する回答は「ミドルウェア」という結論でおk?

851:名無しさん@お腹いっぱい。
08/07/22 08:53:32
どこをどう読んだらそうなる
強く納得できる理屈が無いだろ


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch