【公開】apache総合スレッド【鯖】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
02/07/10 00:59ID:???本家サイト
http://www.apache.jp/
http://www.apache.org/
関連スレ
Apacheの設定を教えてください
http://pc.2ch.net/test/read.cgi/php/1003772635/l50
Apache2.x 【新鯖入荷しました】
http://pc.2ch.net/test/read.cgi/php/1018333172/l50
0281275
02/09/02 13:53ID:XRBnyJ3Z>>280
いや日本語ファイル名がHTTPの規格に合わないのは
分かるんですがANHTTPDでやってみたら
便利だったんで同じような事Apacheじゃ出来ないのかなぁ
ってことっス mod_encordingあたりでしょうかね
0282275
02/09/02 14:01ID:XRBnyJ3Z0283nobodyさん
02/09/02 14:29ID:???0284nobodyさん
02/09/02 15:08ID:???どーしてもってんなら
src/modules/standard/mod_autoindex.c
の
static void output_directories(struct ent **ar, int n, autoindex_config_rec *d, request_rec *r, int autoindex_opts, char keyid, char direction)
で
ap_escape_html()
読んでるところを片っ端から裸にしてビルドしなおせば。
0286nobodyさん
02/09/02 21:40ID:???0288名無しだよもん@カラアゲうまうま
02/09/02 23:57ID:???mod_encoding と
autoindex みたいなことするcgiにDirectoryIndexさせれば十分。
うちはそれで EUC-JP なファイル名のまま
日本語ファイル名で触れるようにしてる。
0289nobodyさん
02/09/03 01:51ID:???autoindexは改善する余地結構あるよな
でも、ιぃ言語はサパーリですわ
0292nobodyさん
02/09/04 00:15ID:VvMUzzNB0293nobodyさん
02/09/04 16:30ID:f6s3TIigmod_bandwidthみたいな。
0294nobodyさん
02/09/06 20:44ID:???どうすればいいですか?
0295nobodyさん
02/09/06 21:54ID:???0296nobodyさん
02/09/07 00:35ID:LZNxO8Pmとりあえずエラーログぐらいみれ
0297nobodyさん
02/09/07 14:31ID:fmoGkUbh0298無料動画像
02/09/07 22:05ID:mktqXi69あなたを満足させる無料動画集!!
http://www.traffimagic.com/WIPE7MMLZCA/comein/PRTPJ
0300nobodyさん
02/09/08 10:39ID:???ここは、どういう技術を使っているのでしょうか?
適当なスレが見つからなかったのでここで聞かせて頂きました
0301nobodyさん
02/09/08 11:12ID:???0302nobodyさん
02/09/08 21:38ID:???ただ単にアップロードされたファイルをPerlのsystemかexecで外部処理してると思われ。
これで思い出したけど、自宅鯖でimgboard.cgiを改造して、アップロードされた画像を縮小加工、別ファイルとして
保存して、サムネイル画像にそれを表示させる事で回線の細さをカバーしてるところがあったな。
ヤフオクと似た仕組みだね。
0303nobodyさん
02/09/09 23:48ID:???認証する際にダイアログが出ますがこれを普通のWEBページで出来ないものでしょうか?
0304nobodyさん
02/09/09 23:49ID:???basic認証
0307nobodyさん
02/09/10 03:49ID:???すいません,書き方が悪くて。
.htaccess basic認証を使った場合,
ダイアログが出てしまいますが,これを普通のWEBページの
フォーム上からBasic認証できないものでしょうか?
どなたかお知恵をお願いいたします。
0308nobodyさん
02/09/10 06:27ID:???簡単。Javaでやりゃいい。
それらで拾ったユーザー、PWを
http://ユーザー:PW@hoge.com/unko/
とすりゃいい。
0309OSはM$
02/09/10 07:44ID:???いいんならチトお尋ねしたい事があるんですが。
0310nobodyさん
02/09/10 12:29ID:???BASIC認証の仕組み上、無理と考えてください。
別の認証方法を使う必要があります。
>>308
それってJavaScriptのこと?
URL中にパスワードを含めるのはログに残ってアレなので、
よっぽどのことがない限りやらない。
>>309
問題ないかと。
0312nobodyさん
02/09/11 02:24ID:???HTTP/1.0 401 Unauthorized
0314nobodyさん
02/09/12 14:58ID:4YB9uNfo0315hack me!
02/09/12 15:14ID:PbjeCKLO0316nobodyさん
02/09/12 23:18ID:G8vqFC9jいま300なんですけど、ほとんどのHTMLがそれ以下です。
gzipの圧縮効率もあるから、あまり小さいのも意味ないですよね。
0317nobodyさん
02/09/12 23:19ID:???0319nobodyさん
02/09/13 00:50ID:???0321nobodyさん
02/09/13 03:24ID:???でもCPUとメモリは腐るほど潤沢で、サイトのコンテンツはほとんどがテキスト、
というサイトってそんなにあるのかなぁ。
正直入れてみたいだけちゃうんか、と。
0323nobodyさん
02/09/13 06:27ID:???そりゃ、cgiやphpとかでも、gzip入れると全然違うよ。
LAN接続じゃ対して変わらないように見えるが、WANからだとサクッと表示されるようになるしな。
ページによっては、数パケで済む場合もあるし、これだとADSL鯖だと気づかれにくい事もある(w
画像置くともうダメだが。
0324nobodyさん
02/09/13 15:10ID:???0325nobodyさん
02/09/13 21:19ID:???海外に鯖がある場合とかの遅延が大きい場合も効果がある。
相手の反応待ちを極力減らせるから。
0326nobodyさん
02/09/13 22:30ID:???たしかに中国とかは5年前並に遅いけど。
0327nobodyさん
02/09/13 23:20ID:???特に最近は末端がブロードバンド化して、すいすい落ちてくるのが当たり前になっているから、
ちょっとでもつっかかると、「遅い」 と感じてしまうからなおさらに。
0330nobodyさん
02/09/14 02:10ID:???0331nobodyさん
02/09/14 07:56ID:???自宅のADSL8Mから厨房っぽく
ダウンロードソフトで何度もページ落としまくって時間を比べた限りでは、
mod_gzip入れてないほうが微妙に速かった。
CPUを食ってるせいなんだろう。
テストに使ったのはPHPを使った5KB〜15KBくらのtext/html。
もっとサイズが大きくなれば得るところもでかいんだろうけど、
多分、小規模ドキュメントが多いところでは入れなくてもよさげ。
もっとちゃんと統計とって、
「この辺のサイズからグンとお得になります」
みたいなのまとめてるサイトはないものか。
0332nobodyさん
02/09/14 09:25ID:???アフォか?
mod_gzipは回線が256Kbpsとか512Kbpsで、テキスト主体で混み合ってるような条件で効果を発揮するんだよ。
ガラ空きのマシンに入れても意味ないだろ。無駄にCPU食うだけ。
2ちゃんねるみたいにテキスト主体で100Mbpsの帯域を使い切ってしまうようなケースでは
CPUを食うけどmod_gzipの効果は絶大。転送量が1/4ぐらいに落ちたんだからな。
それに、phpを使ったテキストじゃ意味ねぇだろ。
htmlファイルでやってみろ。
少なくとも、俺が検証した時は、txt、htmlなら、1.4〜3倍ぐらい転送スピードが上がった。
shtml、php、cgiはあまり上がらなかった。
0333nobodyさん
02/09/14 15:48ID:???とりあえず煽るのが習い性になってるんかい?
誰も2chでの結果を否定したりしてないよ。
小さなphpのサイトじゃほぼ無意味だと確認したんですけど、
その文意が汲み取れませんか?
> shtml、php、cgiはあまり上がらなかった。
あなたの実験だって似たような結論なわけでしょう。
text/htmlを返してるのに何故上がらないのかってとこを考えてみれば?
ついでに2chだってウェブブラウザは CGI 経由なわけだが。
俺は、分岐点が知りたいんだっていってんのに。
そのうち自分で実験するが。
0334nobodyさん
02/09/14 18:17ID:lJR5BBC/mod_gzip って、VritualHostじゃ圧縮しないんでしょうか?
0335334
02/09/14 18:26ID:lJR5BBC/> VirtualHostごとの個別設定みたいなものにmod_gzipは対応していないみたいなのだ
とあるんですが、うちのサーバでもドメインで接続すると圧縮してくれない。
0336334
02/09/14 18:42ID:lJR5BBC/は圧縮されてませんが動いていますよね。
xxx.xxx.xxx.xxx - - [14/Sep/2002:17:28:22 +0900] "GET / HTTP/1.1" 200 2015 mod_gzip: - In:- Out:-:-pct.
は動いていないということで良いんですよね?
0337nobodyさん
02/09/14 19:10ID:Q771RJXkCPU消費は少ないんじゃないの
0338KeepAlive On
02/09/14 19:35ID:???チューニングやカスタマイズ、またモジュールの製作なんかを漏れみたいな
安月給サラリーマンのために低料金で行ってくれる会社を紹介してほしいん
ですが、誰かいい会社や団体を知りませんか?
0339nobodyさん
02/09/14 20:41ID:???アホですか?
動的コンテンツだろうが静的だろうが圧縮の結果には変わりがないんだけど。
これら変わらないとしたら回線速度よりも動的生成のオーバヘッドが
ボトルネックになってるせいで、問題の所在はまったく異なる。
32kbps の AirH" のような低速回線で接続すれば回線の方で律速されるから
ちゃんと効果が出てくる。それでも変わらんのなら、CGI を設計しなおすべき。
>>334
VirtualHost でもちゃんと使える。
>>337
コンテンツネゴシエーション自体がかなり重い部類に属するよ。
圧縮とどっちが重いかはちゃんと比較したことないから知らんけど。
0340nobodyさん
02/09/14 21:20ID:j2HWbBRK動的に圧縮するのと比べて重いとは考えにくいと思うけど。
0341nobodyさん
02/09/14 21:33ID:???>>331>333は、動的生成のオーバーヘッドとgzip圧縮のトラフィック減とのトレードオフで、
バランスがいいのはどの辺からかってことなんじゃないか。
はっきり言ってそのサイト毎によって異なるから、他人ではまとめようもないかと。
だってマシンアーキテクチャからしてバラバラなんだから、自分でabとか使って実験してみろと。
>>334
VirtualHost毎に有効無効切り替えられたはず。試してみ。
0342nobodyさん
02/09/14 21:44ID:???Apache2.0.40で、suExecをドキュメントルートで実行って、できる?
./configure --enable-suexec --with-suexec-caller=www --with-suexec-docroot=/usr/local/apache2/htdocs --with-suexec-logfile=/usr/local/apache2/logs/suexec_log
でやってみたけど、ユーザディレクトリ(/home/public_html以下)ならできるけど、
ドキュメントルート(/usr/local/apache2/htdocs以下)だと、suExecかかってないっぽい。
ちなみに、実験につかったソース
#!/usr/bin/perl
print "Content-type: text/html\n\n";
print ">PRE<";
print "$0 is being run by User ID $< as PID $$\n";
print `whoami`;
ユーザ領域だと
>PRE< index.cgi is being run by User ID 500 as PID 1073
tetsu
になるけど、
ドキュメントルートだと
>PRE</usr/local/apache2/htdocs/index.cgi is being run by User ID 80 as PID 1074
www
になってしまう。
ちなみに、ドキュメントルートの所有者は、ユーザ領域と同じtetsuで、IDは500
0343nobodyさん
02/09/15 00:08ID:???SuexecUserGroup ディレクティブ
説明: CGI プログラムのユーザパーミッション、グループパーミッション
構文: SuexecUserGroup User Group
コンテキスト: サーバ設定ファイル, バーチャルホスト
ステータス: 拡張
モジュール: mod_suexec
互換性: SuexecUserGroup は 2.0 以降でのみ使用可能。
0344nobodyさん
02/09/15 01:21ID:???0345nobodyさん
02/09/15 22:12ID:???SuexecUserGroup設定して試したものの、
ドキュメントルートと、ドキュメントルートと同じユーザの~以下以外では、
所有者と実行者のUIDが違うよんと怒られま。
<Directory ・・・>
</Directory>
内ではSuexecUserGroup使えないし、コマリンコ
0346root
02/09/16 02:30ID:???PHP4.3.0(RC)Win32はどこに落ちてますか?
Apache2.0.40(Win32)+PHP4.3.0(Win32)+mod_ssl+Open_SSLで動かしている
ヤシはどこにいますか?
0347nobodyさん
02/09/16 02:53ID:???phpはここにある
http://snaps.php.net/win32/
あと、俺のWin機はIIS
0348root
02/09/16 16:36ID:???あぁ、ありがとう、ありがとう。
早速ボクちんのApache2.0.39環境に4.3.0-devのphp4-ze2-win32-latestを
入れてみたんだけど、ApacheのCPU使用率が常時80から90%になっちゃう。
4.2.4-devのphp4-win32-STABLE-latestは
『PHP_IMAP.DLL' - 指定されたプロシージャが見つかりません。』
と
『APACHE.EXE - エントリ ポイントが見つかりません : プロシージャ エントリ ポイント _ecalloc がダイナミック リンク ライブラリ php4ts.dll から見つかりませんでした。』
が出るものの問題なく走りまひた。
Apache2.0.40(Win32)用のSSLはいづこに・・・。
0349nobodyさん
02/09/16 17:17ID:???モジュール式だとメモリ食いつぶす。
日/200ヒット程度なら問題ないが、日/10万ヒットな環境だとapache.exeが
70Mbyteもメモリ食いつぶしてしまうよ。
外部式CGIにすると、apache.exe、メモリ4Mbyteしか消費しなくなるしね。
0350root
02/09/16 18:21ID:???でも、CGIモードで走らせると不具合が出るスクリプトが
ありません?
処理速度的にもCGIモードよりISAPIモードの方が早いし。
どっしようかなぁ。
0351nobodyさん
02/09/16 21:57ID:???ダウンロード開始から完了までの時間を制限する方法は無いかのお?
0352nobodyさん
02/09/16 22:25ID:kWza2nw4タイムアウトさせたら?
0353nobodyさん
02/09/16 22:47ID:???CGIで走らせると不具合が出るスクリプト?
レッツPHPのアクセス解析だと動かなくなるね。
つーか、WebAlizerでログ集計するようになったからこれはもう不要になったし。
掲示板とかチャット、アンケート集計など、一通りのPHPスクリプトを使ってるけど、動かない、なんて事はないよ。
前述のアクセス解析ツールだけだなぁ。
つか、アンケート集計では、日に600件ぐらい投票があって、モジュール式だとちょくちょく飛んでた。
CGI式に切り替えたら安定して動いてるし、飛ぶ事もなくなった。
速度よりも安定性を取るのは当然。どうしてもモジュール式で動かしたかったら1時間毎に再起動したら?
それしかないと思う。
0354root
02/09/16 23:29ID:Bzg7QZDjマジデスカッ!
うーん、飛ばなくなったんですか。羨ましいなぁ。
よし!ボクちんもCGIモードで動かして様子見ることにしますぅ。
んでも、スクリプトの一行目にPerl-CGIみたいにPHP.EXEまでの
絶対パス書かなきゃだめでしたよね。違いましたっけか。
>速度よりも安定性を取るのは当然。どうしてもモジュール式で動かしたかったら1時間毎に再起動したら?
あ、それボクちんもやったんです。でもリスタートするとスレッド数がThreadsPerChildで指定した数に遠く及ばない状態になってしまって、鯖が
うんともすんとも言わなくなることがあるんですぅ。
完全停止させてからスタートさせればとりあえずは問題ないですぅ。
有用な助言ほんとうに感謝しますぅ。
なって
0355root
02/09/16 23:30ID:Bzg7QZDj>>354の最後の「なって」はゴミですぅ。
ごめんなさいですぅ。
0356nobodyさん
02/09/16 23:46ID:???いやね、TimeOutはどうかなーと思ったけど、
ちんたら細々とダウンロードされるとなかなかTimeOutしないのよ。
TimeOut 300とかやっても300秒どころか30分でも1時間でも居座るの。
まあMaxClientsを増やせば済むという解決法もあるがの。
0357nobodyさん
02/09/17 03:03ID:???0358root
02/09/17 10:25ID:???朝7時にApacheを終了させてhttpd.confの設定変更を行って再びApacheを
起動しましたぁ。
Apacheの現在のメモリ使用量は26MBですぅ。システム的な不具合も起きて
いません。
スクリプトも手を加えずに以前のままで問題なく走ってますぅ。でも、それは
ドキュメントルートとその配下のディレクトリにあるものだけですぅ。それ
以外のエイリアス指定されたディレクトリにあるスクリプトは500エッラーで
はっしりっません。
ボクちんって何かほかに設定すべきことを忘れてるんでしょうか?
0359root
02/09/17 11:40ID:???user_dirにそのパスをセットしてもエッラーで動かなかったから、
doc_rootの値を空にしちゃって解決ぅ。いいのかなぁ。
0360root
02/09/17 11:47ID:???ボクちんもISAPIモードがいっちばん好きなんだけど、このモードでApache走らせ
るとリクエストを処理しているうちに、だんだんWindowsがおかしくなってきちゃうの。
挙句の果てはSTOPエラーですぅ。
今回>>353さんのご助言をもとにCGIモードに替えたから、これでWindowsがおかしく
ならなかったら、完全にISAPIモードのバグだとおもいますぅ。
0361nobodyさん
02/09/17 16:09ID:???0362nobodyさん
02/09/17 17:54ID:???あーなんかまた穴が空いてて、つーか穴が無いもんだから
バッファがオーバーフローしちゃう穴が見つかったみたいね。
というか漏れはWinユーザーだからどこかにバイナリがうp
されないとどうしようもない。誰か知らんかね?
0363nobodyさん
02/09/17 18:01ID:???とっとと閉じちゃいましょうね、はいはい。
0365nobodyさん
02/09/17 18:22ID:???この「第三者」をちゃんとした業者に頼むなら金がかかる。
が、よそにやってもらうかわりに自分でやっちまえば金はかからん。
そのかわり信頼性は低くなるし、そのサーバにHTTPSでアクセスするたびに
「その証明書おかしいんじゃーの?」という警告が出る。
0366nobodyさん
02/09/17 18:29ID:???GNUへの募金
http://donate.fsf.org/
0367nobodyさん
02/09/17 19:14ID:???アホやなコイツ。
自宅鯖でもテスト用に作成したCAで自サイトとクライアント間の通信を
暗号化できるの知ってんだろ。あ、ゴメソ、アッフォだから知らないか。
だからほれ、あれだ、ようは自サイト内のコンテンツにクライアントの
メアドとかのちょっとした個人情報や、管理人宛に送る文章を入力して
もらうフォームなんかがあったら、ちょっと暗号化したくなるだろ?
・・・・・・アッフォはそんな事は考えないか。合掌。
0368nobodyさん
02/09/17 21:22ID:???外部CGI式にしても、php内の一行目にパス追加、なんて事は、Apache側の設定で回避出来るよ。
Apache1.3.26の設定例になるが、スクリプトエイリアスでphp.exeを置いてるパスのエイリアスを作る。
で、アクションアプリケーションで、phpなファイルはエイリアスにあるphp.exeを起動させる、と言う指定をすればいい。
これでモジュール式phpから移行したとしても、楽に出来るよ。
>完全停止させてからスタートさせればとりあえずは問題ないですぅ。
そうだわな、リスタートじゃメモリに居座ったりするからなぁ。
ストップ、スタートとさせないと安定して動かないんだよな。
エイリアスに置いてるphpが動かないみたいだけど、うちの環境では問題無く動いてるよ。
httpd.confに設定すれば問題はないみたい。
0370nobodyさん
02/09/17 22:20ID:???ダメでーす。
phpでこれができるのは、はじめからそういう使い方を考慮して設計されてるから。
perlはそんなことを考えて作られてない。
0371nobodyさん
02/09/17 22:42ID:???Perlでも一応できるよ。別の方法でね。
#オレは詳しく知らんのでだれかきぼんw
ScriptInterpreterSource registry
ってのがあるみたいだが、関連付けに手間取って(つーかよくわからんかった)、
できなかったので俺みたいなやつにはお勧めできない。
#結局できなかったしw
0372nobodyさん
02/09/18 02:11ID:l892fLm0思うのですが悩ましいでしょうか。敢えて perl のフルパス表記を止めるなら、
以下のような書き方があります。
#!/bin/sh
(echo \$0='"'"$0"'";'; tail +5 $0) | exec perl
exit $?
# perl script comes hereafter.
printf("Hello, World!\n");
Win 環境の場合は CMD.EXE を叩けばいいと思います。遅くなりますが。
0373372
02/09/18 02:14ID:l892fLm0しょうか。なんかあまり差が見えないのですが、cronolog を参考に httplog
が書かれたという認識でいいのでしょうか。
0374nobodyさん
02/09/18 03:27ID:???http://httpd.apache.org/docs-2.0/
0375nobodyさん
02/09/18 10:47ID:???( ´,_ゝ`)プッ 自己認証でSSL上げるほどオナニーな使い方はねーヨ。
たかが、そんなことするために嬉しがって、SSLにせんでもええわ。
必死だな、このアフォ。
0376nobodyさん
02/09/18 11:24ID:???とりあえず、それがどの環境で動く何をするものなのか書いてくれや。
ぐぐる手間がはぶける。
で、結論からいうと、「そのぐらい自分でスクリプト書けば?」
スクリプトの骨格は下のような感じ(もちろんこれだけでは不十分)。
#!/bin/sh
mv access.log access.log.`date +%Y%m%d`
cp /dev/null access.log
apachectl graceful
0377373
02/09/18 12:43ID:???> ぐぐる手間がはぶける。
ごめんなさい。両方知ってるようなコアな人が居るといいな、と思って
書き流したもんで。
> で、結論からいうと、「そのぐらい自分でスクリプト書けば?」
えーと、分かってるとは思うんですが念のため。log のローテーションにはいろいろ
微妙な点があります。(例えば graceful restart はログの移行を保証しない。
詳しくは http://httpd.apache.org/docs/logs.html#rotation 等参照。
もともと syslogd が pipe を使うのも、そこに理由があるわけで。)
で、その辺を考えて自分で perl のスクリプトを組んであちこちで流用していたの
ですが、ありものでちゃんと動いて、かつ高速で graceful restart の曖昧性もない
んならそっちを使う方が正しいだろうつうことで、今は cronolog を使っています。
その後、httplog についても知ったので、そっちはどうなのかな、と。
0378370
02/09/18 14:56ID:???AddHandler perl-script pl
Action perl-script /cgi-bin/perl-wrapper.cgi
/cgi-bin/perl-wrapper.cgiに以下のスクリプトを置く。
#!/usr/bin/perl
my $script = $ENV{PATH_TRANSLATED};
my $dir = $script;
$dir =~ s@/[^/]*$@@;
if (! -f $script) {
print qq(Status: 404 Not Found\r
Content-Type: text/plain\r
\r
script not found.
);
exit;
}
chdir($dir);
exec("$^X", $script);
以上により、
・拡張子.plのファイルは、そのスクリプトの#!の行に示されているperlではなく、
perl-wrapper.cgiの#!行のperlで実行される。
・chmod +xしなくてもスクリプトが実行されるようになる。
・cgi-binにしかCGIを置けない環境でも、cgi-bin以外の場所に置いたスクリプトを実行できる。
phpのCGI起動では、phpの内部でこのスクリプトと同様の処理がおこなわれている。
あ、ちなみにこのスクリプトは3分で書いたいいかげんなもので、
バグやらなんやらがあるかもしれんので注意。あくまでサンプルであって、
371の言うとおり、Win32のApacheではそれ用のディレクティブを使った方がいい。
0379nobodyさん
02/09/18 15:40ID:???どのファイルにどのように記述すればいいですか?
SetENVIfを使って あるIPアドレスははじく方法を見つけたのですが。
0380nobodyさん
02/09/18 15:51ID:???>どのファイルにどのように記述すればいいですか?
httpd.confでSetEnvIfを使ってください。
>SetENVIfを使って あるIPアドレスははじく方法を見つけたのですが。
そんなことにSetEnvIfを使わないでください。
■ このスレッドは過去ログ倉庫に格納されています