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

Apache関連 Part5

■ このスレッドは過去ログ倉庫に格納されています
0001攻撃ヘリAPACHENGNG
HTTP ServerのApacheに関する話題を扱うスレッドです。

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

Apache関連サイトへのリンクは >>2-5 あたり
0241名無しさん@お腹いっぱい。NGNG
バーチャルホストで運用しているサイトに
Host: www.example.com
をつけずにアクセスできるので

ごく希に、この意図で使用しているクライアントがあるかもしれません。
0242239NGNG
>>241
そのクライアントは例としてあげた(実際は別のサイト)
www.example.com へアクセスするつもりで www.example.com
とは無関係のサイトへくだんの GET を投げて来たということ
ですか? よく分かりません。

>>240
open proxy サーチの対象に遭ったということですか?
これならば、気分は悪いですが合点いきます。
0243239NGNG
>>242
241さんが解説下さっているのも、proxy 経由のアクセスと
いうことを示唆されているのでしょうか?
「バーチャルホストで運用しているサイト」とは、
"GET http://www.example.com/ HTTP/1.1"
といったアクセスをされているホストを指されていますか?
0244名無しさん@お腹いっぱい。NGNG
いや、アクセス対象が自サイトと関係ないなら間違いなく240の通り
0245名無しさん@お腹いっぱい。NGNG
>>236
> (((( ;゚Д゚)))ガクガクブルブル

なんで本家のメイリングリストでもそうすれってなってたけど。
0246名無しさん@お腹いっぱい。NGNG
SSH その3
http://pc.2ch.net/test/read.cgi/unix/1058202104/222-225
から飛んできました。

SSH のように、ある秘密鍵を持っている人のアクセスを許可するような認証を
HTTP で行うためにはどうすればいいのでしょうか?
0247名無しさん@お腹いっぱい。NGNG
HTTPというより認証用フォーム(PerlなりPHPなり)でその仕組みを作る。
あと公開鍵方式とは全く別なんだけどDigest認証は用件に合わない?
0248名無しさん@お腹いっぱい。NGNG
>>246
SSL 認証でいいんじゃねーの?
0249名無しさん@お腹いっぱい。NGNG
>>246
「ある秘密鍵」なの?「ある公開鍵」じゃなくて?
0250初期不良NGNG
SSL のクライアント認証がばっちりなんだからそれで良いじゃん
0251名無しさん@お腹いっぱい。NGNG
>235
2.8.15と2.8.16のdiff取って、どういうことか確認した方がいいでつ・・・
(((((;゚Д゚))))ガクガクブルブル
0252初期不良NGNG
>>239
そうそう、最近こんなアクセスも増えてきてるみたいだから
みんな気を付けてね。

POST http://localhost:25/

間違って ProxyRequests On とかやってしまっていると
オープンプロキシーとして疎まれるだけじゃなく
SPAM サーバとしても使われてしまっていたりする。
実際には localhost じゃなくてそのサーバのホスト名が
入っていたのでもっと見つかりにくいかも。
0253名無しさん@お腹いっぱい。NGNG
>>251
どゆこと?
0254名無しさん@お腹いっぱい。NGNG
>>252
うちもいっぱい来るんすけどなんとか対策ないですかねぇ?
今はとりあえずnph-cgiでロギングしながら適当な返事返してるんですけど。

61.54.85.156:3541 , 2003/11/02 05:27:44 , GET http://202.96.140.78:34627/BODY&USER=ィ勢篠メヌ鬨昏・7 , Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; T312461; .NET CLR 1.1.4322)
61.54.85.156:3538 , 2003/11/02 05:27:44 , GET http://202.96.140.78:34627/BODY&USER=ィ勢篠メヌ鬨昏・4 , Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; T312461; .NET CLR 1.1.4322)
61.54.85.156:4047 , 2003/11/02 05:27:45 , GET http://202.96.140.78:34627/BODY&USER=ィpヒタヘ択犬ィpツメヌ・0&PASS= , Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; T312461; .NET CLR 1.1.4322)
67.202.109.175:3558 , 2003/11/02 06:03:49 , POST http://61.213.120.122:25/ ,
67.202.109.175:3560 , 2003/11/02 06:03:50 , POST http://61.213.67.229:25/ ,
67.202.109.30:3361 , 2003/11/02 06:11:42 , POST http://61.213.120.122:25/ ,
0255初期不良NGNG
>>253
このあとこのリクエストを出した(おそらく)スクリプトは
そのサーバの smtp とおしゃべりをします。
smtp サーバは localhost からのアクセスなので
たいていリレーをしてしまいます。と言う事で
単なるオープンプロキシーで収まっていたはずが、
SPAM サーバにまでされてしまう、と言う事です。
他のプロトコルもしゃべられると困るしとにかく
オープンプロキシーは思ったよりやばいです。
0256名無しさん@お腹いっぱい。NGNG
>>255
>>253>>251 に聞いているように見えるのだが?
0257名無しさん@お腹いっぱい。NGNG
>>246
SSLVerifyClient require
って話?
0258初期不良NGNG
>>256
スマソ
そんなに語りたかったのか...>漏れ
0259名無しさん@お腹いっぱい。NGNG
>>258
>>254に対しても語ってくだちゃい。
0260名無しさん@お腹いっぱい。NGNG
>>259
request が飛んで来ること自体は止められないんじゃない?
あとは >>255 のとおりオープンプロキシになってないかちゃんと設定確認しとくと。
0261254NGNG
>>260
まぁ、そうですね。
いまは数分おきにsource-ipを route add xxxx reject してるんですけど
ソースも踏み台なのか、毎回source-ipちがうんですよね。

なので reject もあまり意味なさそう・・・。

あとオープンプロキシ云々は、mod_proxyを組み込まないでコンパイルしなおした
のと、そういう proxy要求なリクエストを mod_rewrite で nph-cgi に持って
いっているので大丈夫です。

できればatakkerのブラックリストに載せてもらおうかと思って、そういうアクセス
に対してはブラクラを返してたりするんですけど全然減らないですね。
http_user_agentがIEだったりするんですけどあれはfakeなのかな・・・。
0262名無しさん@お腹いっぱい。NGNG
*.ar - - [04/Nov/2003:08:34:19 +0900] "CONNECT *.ar:25 HTTP/1.0" 401 401
*.ar - - [04/Nov/2003:08:34:19 +0900] "0x040x01" 401 401

こういうのがいくつか来てました。
25番に繋ごうとしてるのでSMTPのトンネル狙いだろうと思うのですが、下の方はなんでしょうか?
0x040x01は実際のログだとエスケープされてません。
0263名無しさん@お腹いっぱい。NGNG
下らないrequestなんかほっとけよ
調子に乗って反撃なんかしてたら自分も同罪だぞ
0264名無しさん@お腹いっぱい。NGNG
反撃って何ですか?
0265名無しさん@お腹いっぱい。NGNG
nmap -sS してから襲撃。
0266名無しさん@お腹いっぱい。NGNG
>>263
ういっす。
どうせ、アクセス元に攻撃しても単なる踏み台なんだろうから意味無いですしね。
0267名無しさん@お腹いっぱい。NGNG
>>262は私なんですが。
>>266=>>263だったりするのでしょうか。ジサクジエーン(・∀・)。

私は、反撃なんかには興味ありません。
0x04 0x01 というのをナマで送ってる意味が俺の乏しい知識だと見当がつかないので不思議に思っただけです。
あと、これで Apache が BadRequest を返してないってのもちょっとびっくりしました。

いつくるか分からんからパケットダンプし続けるわけにもいかないし。
0268名無しさん@お腹いっぱい。NGNG
>>267
>>266>>261ですよ。
>>263は反撃という話だったので、私の>>261に対するレスだと思いましたが。
0269名無しさん@お腹いっぱい。NGNG
>>267
Unauthoirzed って事は、BadRequestを返すわけにもいかんでしょ。
承認が先に無いと意味が無いですよ。
0270名無しさん@お腹いっぱい。NGNG
>>268
正直スマンカッタ

>>269
なるほど、そういうことですか。手っ取り早く規制すために全体にBasic認証かけちゃってたもので。

401出させる前のログを辿ってみたら、同様のリクエストを見つけました。

*.ar - - [21/Oct/2003:08:33:36 +0900] "0x040x01" 501 204

501 Not Implementedになるのか。そりゃそうですね。

しかしこのリクエストは何を狙ってるのか謎です。
0271名無しさん@お腹いっぱい。NGNG
http://www.example.com/foo/bar/fuga/hoge/
にアクセスされた場合、実際には
http://www.example.com/index.php?cat=hoge
にアクセスしてるように表示させたいと思っています。
(要は、com/以下の、途中のパス名はどうでもよく、URIの最後の/と/の間の文字列を受け取って
実際には、http://www.example.com/index.php?cat=その文字列
を表示させたく思ってます。

自分で調べたところ、
●mod_rewrite を使う
●たぶん日本語で一番わかりやすそうなサイトは http://japache.infoscience.co.jp/rewriteguide/
と、分かったのですが、実際の表現方法が分かりません。
httpd.confに、
<VirtualHost xxx.xxx.xx.xx:80>
SSLDisable
<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteOptions inherit
  #2003-11-07 20:08
  RewriteRule ^([^/]*)/$ /index.php?cat=$1 [R]
 </IfModule>
</VirtualHost>
と、RewriteRuleの1行を加えて、Apacheを再起動させたのですが、結果は変わらずでした。

正しくはどう書けばよいのでしょうか・・・?正規表現が間違っているのでしょうか?
なお、環境は、FreeBSDのレンタル共有サーバ(ただし、実質専用サーバ)、というか、
このサービス使ってます⇒http://vps.rapidsite.jp/
0272271NGNG
すいません、「httpd -l」したら
mod_rewrite.c
が表示されてませんでした・・・。

おかしいな・・・ちょっと手前に戻って、勉強しなおしてきます。
0273271NGNG
うーん。

デフォルトで、httpd.confに、
#LoadModule rewrite_module libexec/mod_rewrite.so
とコメントアウトされてる行があったので、
そのコメントをはずして、
apacheを再起動させたのですが・・・
やはり、
「httpd -l」したら
mod_rewrite.c
が見あたらない・・・

/# find . -name mod_rewrite.so -print
./usr/local/apache/libexec/mod_rewrite.so

と、モジュールの存在は確認済みなのですが・・・
この場合は、Apacheをリコンパイルする必要はないですよねぇ・・・?

初歩的なとこで勘違いしてるでしょうか?
0274名無しさん@お腹いっぱい。NGNG
>>273
Apacheリコンパイルしないとダメだよ。

./configure --enable-rewrite
make
make install

こんな感じ。
0275274NGNG
>>273
ごめん、よく読んでなかった。

LoadModule rewrite_module /usr/local/apache/libexec/mod_rewrite.so

これは書いてるの?
0276274NGNG
全く読んでなかった・・・逝って来る。

0277名無しさん@お腹いっぱい。NGNG
>>273
DSOでつくってたら -lじゃみれない。mod_so.cが見えるだけ。
アクティブなモジュール知りたかったら /server-info みんしゃい。
0278271NGNG
みなさん、ありがとうございます。
すいません、正規表現が変だったようで、

RewriteRule ([^/]*)/?$ /index.php?cat=$1

としたら、うまくいきました。
ただ、そしたらこんどは、
http://www.example.com/phpMyAdmin/
みたいなものまでこれをを解釈してしまうようになってしまいました・・
(そりゃそうだ)

ちとスレ違い気味なので、正規表現スレ逝ってきます。
0279初心者NGNG

tomcat + mod_rewrite を使用したいのですが・・・。

mod_rewrite で
RewriteRule abc/TEST/([0-9]+)/index.html abc/TEST.do?foo=$1
として
http://www.example.com/abc/TEST/122/index.html
へアクセスすると、
ログからは、apacheは abc/TEST.do と foo=122 に分割してくれるのですが
abc/TEST.do ファイルを Apache の DocumentRoot で探して、
当然そんなファイルは存在しないのでエラーを返してしまいます。
RewriteRule で http://www.example.com/abc/TEST.do?... みたいに
フルアドレスを書けば一応アクセスは出来るのですが、REDIRECTに
なってしまい、意味がありません・・・。
どうしたらいいのでしょうか?
0280初心者 279NGNG
↑ちなみに
TEST.do というのは Java Servlet です。
0281名無しさん@お腹いっぱい。NGNG
>>279
> どうしたらいいのでしょうか?

どうしたいのか?
0282名無しさん@お腹いっぱい。NGNG
>>281

Tomcat Context の /abc/TEST.do へ ユーザーが
アクセスできるようにしたいのです。
0283初期不良NGNG
>>279
[P]
ProxyRequests on にする必要はないよ
mod_proxy は必要だと思うけど。
0284初心者 279NGNG
>>283

>ProxyRequests on にする必要はないよ
必要はないよ・・・とは、どういうことでしょうか?
ProxyRequests on にはしておりません。

以上、宜しくお願い致します。

0285初心者 279NGNG
>>283

出来ました!!!
本当にありがとうございます!!!
うひょ〜、すっげ〜、うれしいです!!!
3日かかっても分からなかったので諦めそうだったのですが・・・。
初めから聞いておけばよかったです!
0286昼勤(個人) ◆6IhGf2WyCA NGNG
お願い
==========
特に夜10時から
深夜3時までが
込み合うので
常時接続・連続投稿
はできるだけ控てください
2chブラウザで見ると負担が少なくなります
2chブラウザ↓

かちゅーしゃ
http://members.jcom.home.ne.jp/katjusha/
0287名無しさん@お腹いっぱい。NGNG
>>286
板違い
0288名無しさん@お腹いっぱい。NGNG
くだ質スレにも書かせて頂いたのですが返信が無さそうなのでこちらにも書かせて下さい。
---
mod_throttleにて転送量の制限をしているのですが
htmlやjpg等は拒否の対象外となってしまます(転送量のカウントはされている)。
設定は
ThrottlePolicy volume 1M 300
としてテストしてみたのですが、転送量1MBを超えた場合、コンテントタイプが不明っぽい
abc.binとかへのアクセスは拒否されるようになるのですがhtmlやjpg,tgz等へは普通にアクセス出来てしまいます。
この動作は
Document設定:htmlやイメージは拒否対象から除外する
ex. ThrottlePolicy document 1M 300
にあたると思うのですがvolumeでも適用されてしまうのでしょうか?
---
色々検証したところどうやらAddtypeで定義されている物に関しては転送量をオーバーした後も
正常にアクセス出来てしまうようです。
RedHat7.3 mod_throttle-3.1.2-5にて運用しています。
0289名無しさん@お腹いっぱい。NGNG
FreeBSD の ports-current で、
apache-2.0.48 -> apache-2.0.48_1
に上げたんだけど、httpd-std.conf 中の
Listen 80

Listen
に変更されてたので、運用する httpd.conf にも適用した
ところ、Syntax error になった。
どういう意図で httpd-std.conf の変更があったのかなぁ...
0290名無しさん@お腹いっぱい。NGNG
シェルスクリプトで apache の DocumentRoot のディレクトリを
を取得するにはどうすればいいのですか?
0291名無しさん@お腹いっぱい。NGNG
>>290
$ENV{'DOCUMENT_ROOT'} に入ってる値でいい?
0292名無しさん@お腹いっぱい。NGNG
>>291

apache では

$ENV{'DOCUMENT_ROOT'}

にいつもドキュメントルートが設定されているものなんでしょうか?
もしそうならばそれで解決なんですが
0293名無しさん@お腹いっぱい。NGNG
そうじゃなかったら環境変数の意味ないだろ?
0294名無しさん@お腹いっぱい。NGNG
>>292
ttp://httpd.apache.org/docs/mod/mod_cgi.html
0295名無しさん@お腹いっぱい。NGNG
apache 1.3.29 はバグなしですか。
1.3.28のCGI関係の問題には懲りた・・。
0296名無しさん@お腹いっぱい。NGNG
>>295 バグはあるだろ、どっかしら。ちゃんと検証してからバジョーンうpしる。
0297名無しさん@お腹いっぱい。NGNG
>>295
Announcementぐらい嫁!
0298名無しさん@お腹いっぱい。NGNG
apache掲示板として機能しない2ch。
・・・・。
0299名無しさん@お腹いっぱい。NGNG
ときどき適切な返答もあるし、実際、詳しい人がいっぱい見てるけどさ、
それでも、ここにそんなこと期待してちゃだめだよ。。。。2chなんだからさ。
0300名無しさん@お腹いっぱい。NGNG
Apache2で時々ページの中の画像が表示されないことがありますが、
画像とか表示されないときはどんな事が考えられます?

それとApache2に関するおすすめ本あったら教えて欲しいです
とくにチューニングとかそのあたりについて書いてある系
0301名無しさん@お腹いっぱい。NGNG
>>300
Apache側の問題なの? Apache 1.3.xでは発生しないってこと?
0302名無しさん@お腹いっぱい。NGNG
>>300
ログくらい見れ
0303名無しさん@お腹いっぱい。NGNG
Apache側の問題なのか、2系だからどうなのか
わかればいいんですけど・・・わからんです。
LOGみてもエラーログには画像に関するエラーはなし
アクセスログには普通に200とか304とかのしかでてないです

回線とかCPU負荷で画像が表示されたりされなかったりってありますか?
0304名無しさん@お腹いっぱい。NGNG
>>303
200 とかの後ろのサイズはマトモな値?あとプロキシが腐ってるとか?
0305名無しさん@お腹いっぱい。NGNG
鯖の負荷や回線で画像が表示されないってのは普通にあるだろ
タイムアウトしてるだけで

問題が回線ならともかく、
負荷等に起因するなら、その原因を探さないと
0306名無しさん@お腹いっぱい。NGNG
質問です。
apache 1.3.29 でリバースプロキシを組もうとしているのですが、なぜか画像はリバースプロキシのキャッシュから読み込めて、
HTML のほうがキャッシュから読めず、常に Web サーバのほうからデータを取ってきてしまいます。

- 画像の場合
HEAD /image/sample.gif HTTP/1.0

HTTP/1.1 200 OK
Date: Fri, 14 Nov 2003 14:22:07 GMT
Server: Apache/1.3.29 (Unix)
Last-Modified: Mon, 27 Oct 2003 05:20:11 GMT
Accept-Ranges: bytes
Content-Type: image/gif
ETag: "2f2eb6-2a7f-3f9c98c3"
Content-Length: 10221
Age: 509
X-Cache: HIT from www0.hoge.ne.jp # <-- キャッシュから読んでいる
Connection: close

- HTML の場合
HEAD /index.html HTTP/1.0

HTTP/1.1 200 OK
Date: Fri, 14 Nov 2003 14:24:13 GMT
Server: Apache/1.3.29 (Unix)
Content-Type: text/html
X-Cache: MISS from www0.hoge.ne.jp # <-- キャッシュから読みこめていない。
Connection: close

いちおう、Web サーバも apache 1.3.29 で構成されています。HTML のほうも、リバースプロキシのキャッシュから読み込める
ようにしたいのですが、何か対応策があれば教えてください。
0307名無しさん@お腹いっぱい。NGNG
Last-Modified: とか ETag: とかついてないところを見ると、
静的な HTML じゃないんでしょ。SSI をはずしなされ。
0308名無しさん@お腹いっぱい。NGNG
>>307
SSI を使っているHTMLもありますけれど、いちおう使っていないもので試しています。
それとも、SSI 使用の HTML は拡張子 .shtml、それ以外は .html と明示的に
分けないとだめですかね?

0309名無しさん@お腹いっぱい。NGNG
>>308
>>307のヘッダの意味分かるか?
0310名無しさん@お腹いっぱい。NGNG
>>308
XbitHackつかえ。
0311名無しさん@お腹いっぱい。NGNG
HTML の中に SSI のコマンドをひとつも使ってなくても、
mod_include を通っていれば内部的には毎回出力が変わる動的ドキュメントの
扱いになり、proxy にキャッシュさせるためのヘッダは吐かれなくなる。
0312名無しさん@お腹いっぱい。NGNG
apache1.3からapache2.0に移行したのですがエラーに悩んでおります。
/etc/rc.d/init.d/httpd2 restart とすると
httpd2を起動中: (98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
というエラーが発生してしまいます。
apache1.3は完全に止まっておりapache2を完全に停止させた状態だとport80は空いているのですが
apache2が起動している状態で
/etc/rc.d/init.d/httpd2 stop
nmap localhost
とすると80portがまだ開いたままでもう一度/etc/rc.d/init.d/httpd2 stopすると完全に停止し80portも空きます。
/etc/rc.d/init.d/httpd2 restart =
/etc/rc.d/init.d/httpd2 stop #この時点ではport80が開いたまま
/etc/rc.d/init.d/httpd2 start #port80が開いたままなので上記のエラーが発生

試しにstopを2回すると正常に起動します。
/etc/rc.d/init.d/httpd2 stop #この時点ではport80が開いたまま
/etc/rc.d/init.d/httpd2 stop #ここでport80が閉じられる
/etc/rc.d/init.d/httpd2 start #正常起動


どうやらapache2がport80で2回起動している感じで
Listen 81
にすると正常に/etc/rc.d/init.d/httpd2 restart出来ます。
問題切り分けのためsslとvirtualhostの設定はしていません。
どなたかアドバイスよろしく御願いします。
0313名無しさん@お腹いっぱい。NGNG
>>312
/etc/rc.d/init.d/httpd2 の中を見てみませんか?
0314312NGNG
>>313さんありがとうございます。
/etc/rc.d/init.d/functionsのkiiprocが実行されているようで
1度目はpidファイルのPIDをKILLしてPIDファイルを削除、2度目は
PIDファイルがないためapache2のプロセスをKILLしてたようです。
1度目のstopで終了しなかったのはこのためですね。
やはり起動時に問題があるようです。
もうちょっとハマってみます。
0315名無しさん@お腹いっぱい。NGNG
どーでもいいけど、ポートが開いてるかどうか確認するのに
>nmap localhost
これはないだろう(w

% netstat -an | fgrep LISTEN
0316名無しさん@お腹いっぱい。NGNG
Apache2でPHPって事実上無理なの?
1人でテストしてるときは問題なかったけど、数人である程度負荷かけながら
テストしたら物凄い勢いでメモリ消費したんです。
workerだからかなと思い、preforkも試したけど多少ましなくらい。
メモリ4GByteで足りないとは…。
0317名無しさん@お腹いっぱい。NGNG
>316
「事実上」の面白い用例ですね。
0318名無しさん@お腹いっぱい。NGNG
httpd.confをいじりまくって、
Apacheを再起動したら、
Syntax OK
とはでるのですが、
実際にウェブにブラウザでアクセスすると、
どうもウェブサーバが起動していないもようです。

いったいどこがおかしいのでしょうか?
たぶん、どっかを消してしまったのではないかと思うのですが・・・

http://31.com/test/httpd.conf.txt
にそれを置いておきます。
(いちお、ipアドレスはxxx.xx.xx.xみたくして、ドメイン名はexample.com にしてます)
(なお、↑31.com は、今いじってるのとは全く別のサーバです)

なお、現在いじくってるサーバは、
ラピッドサイトのVPSプランとかいうやつで、
共有サーバなのですが、
それぞれのお客さんが、(仮想な?)root権限をもてるので、
httpd.confをいじれたりします。
その辺も関係あるんでしょうか・・・

サポセンに電話したいんだけど、こんな時間なもんで。。。

もしおわかりの方、お助けいただければ幸いです。
0319名無しさん@お腹いっぱい。NGNG
apachectl configtest で再起動したつもりになってる予感?
0320名無しさん@お腹いっぱい。NGNG
>>318
> Apacheを再起動したら、

どうやって?
0321318NGNG
>>320
ラピッドサイトが用意している特別なコマンドがあるので、それを使いました。
xxxx ~# restart_apache
Syntax OK
/usr/local/apache/bin/apachectl stop: httpsd (no pid file) not running
/usr/local/apache/bin/apachectl start: httpsd started

これが問題ですか?
0322名無しさん@お腹いっぱい。NGNG
>321
そのスクリプトの中身は良くわかりませんが、
元々起動されてないのにrestartする意味ってあるの?
ターミナル接続出来るんならpsコマンドでhttpdが走っているか確認。

というか、普通に起動コマンドは無いんですかね?
0323名無しさん@お腹いっぱい。NGNG
それは単に
apachectl -t
apachectl restart
となっているだけではないか?
0324名無しさん@お腹いっぱい。NGNG
>>321
普通にapache2インストールしたら/usr/local/apache2にインストールされないかな
0325名無しさん@お腹いっぱい。NGNG
>>324
おれもよくしらんのだけど、最近のアメ公共用サーバはshell以外chrootしてるのがおおいから
実際の居場所が $HOME/usr/local/だったりするよ。
0326名無しさん@お腹いっぱい。NGNG
コマンドラインからシェルスクリプトファイルを
apache に渡して, CGI として実行するのはどうしたらいいの?
0327名無しさん@お腹いっぱい。NGNG
>>326
どういう意味?
0328326NGNG
>>327

シェルスクリプトの中で,
apache の DocumentRoot を取得したい.

apache は,CGI として実行されたスクリプトの中で,
$DOCUMENT_ROOT という環境変数に,
DocumentRoot を保持するのだそうだ.

ただのシェルスクリプトの中で $DOCUMENT_ROOT を
参照しても何も入っていないので,
apache が実行する CGI としてシェルスクリプトを実行して,
DocumentRoot を得たい
0329名無しさん@お腹いっぱい。NGNG
 カシワモーチ

     ______
    `=、;;;;;,,,,,,,:::,,,,,;;;;;,,,,`""''';;;;,, 、__
     ,.-'゙''''',='";;;;;;;;",-,,;;;;;;゙;;;;;;;;;l;;;;`,、
   /   `ー-...,;;;;;;;;;;;;,-‐/;;;;;;';;;;;;;;;;;;
  ./             `''''''""i;;;;;;;;ヽ
  l  ●  |,,,____/           |;;;;}
  |     |.:::::/  ●        ノ;;;;}
  ヽ、   |:::/          _,/;;;'゛
    `ヽ、_ |/        _,,.,;‐';;;;゛゛
      "'''=ー;‐---‐‐'';';"-''"゛

0330名無しさん@お腹いっぱい。NGNG
>>328
grep -i ^documentroot /path/to/httpd.conf | awk '{print $2}'
じゃご不満?
0331名無しさん@お腹いっぱい。NGNG
>>330

httpd.conf の置き場所はシステムによって違いえるでしょ?
httpd.conf を検索したところで,それを apache が
読んでるとは限らない.

だから,今うごいてる,httpd に直接
DocumentRoot を聞きたいんだけど
0332291NGNG
print $ENV{'DOCUMENT_ROOT'};

なcgiをサーバーに置いといて、

$ligne = `/usr/bin/lynx -dump http://localhost:80/documentroot.cgi`;

こんな感じのスクリプトを動かせばいいんちゃう。
0333332NGNG
また ligne だ... _| ̄|○

漏れの /usr/local/bin/apache-status.pl が間違ってるから・・・。。゜(ノД`)゜。。
0334名無しさん@お腹いっぱい。NGNG
>>326
そんなことできるの?
0335名無しさん@お腹いっぱい。NGNG
>>334
cgiってなにか知ってる?
0336名無しさん@お腹いっぱい。NGNG
>>332
それだと「CGI の置き場所が違いえる」とか言われそうだな。
0337名無しさん@お腹いっぱい。NGNG
>>334
パールのことでしょ?
0338名無しさん@お腹いっぱい。NGNG
>>331
今うごいてる,httpd にデバッガでアタッチして,(ry
0339332NGNG
>>336
そこまで面倒みれんわ。(w
0340名無しさん@お腹いっぱい。NGNG
モジュールを作っていて,リクエストのcontent_typeが取得できなくて困っています.
リクエストの形式が,text/xmlとapplication/dimeの場合分けがしたいのです.

リクエスト受け取り時のrequest_rec *rのr->content_typeがnullになっています.
何か取得の際にコツがあるのでしょうか?宜しくお願いします.
■ このスレッドは過去ログ倉庫に格納されています