68user's page 掲示板

Prev< No. 747〜752> Next  [最新発言に戻る] [過去ログ一覧]
No. 747 # 68user [URL] [E-mail] 2000/02/23 (水) 10:23
FORM は POST で送っているわけですね? で、
> <A HREF=hoge.exe?data1=cc&data2=dd> hoge </a>
だと GET になるわけです。hoge.exe は POST でデータを
受けているので、標準入力を読んでいるはずですよね。
もしGET にも対応したいなら環境変数 QUERY_STRING を
見るようにしないといけません。

C なら getenv("QUERY_STRING") でもいいし、
    main(int argc,char *argv,char *envp)
として envp を見てもよいでしょう。

No. 748 # らんらん 2000/02/23 (水) 12:54
ありがとうございます

if(0 == strcmp("POST",getenv("REQUEST_METHOD"))) { /* POSTの場合 */
                if(fgets(buf, len+1, stdin) == NULL) {
                                return 1;
                }
} else { /* GETの場合 */
                strncpy(buf, getenv("QUERY_STRING"), sizeo(buf)-1);
}

こんな感じでうまくいきました
POST と GET ぜんぜん意識してませんでした(よく調べます)

ほんとにありがとうございます。

No. 749 # Rica 2000/02/23 (水) 15:49
promptの説明文の中にHTMLタグが表示されてましたよ

% set prompt="%Sabc%s%Bdef%b%Ughi%u:"
abc<b>def</b><u>ghi</u>:

No. 750 # スナフキン 2000/02/25 (金) 03:15
お久しぶりです、以前くだらない質問ばかりしていたものです(^^;

CGIでサーバーの負荷率を調べたいのですが何かよい方法は無いでしょうか?

一応 top の表示のヘッダー部分に表示される数値を取り出し加工しようと
もくろんだのですが見事に失敗しました。

open(SYS, "top|");

やはり甘かった。コマンドラインで top > hoge.txt としても取れないので
top から取り込むのは駄目みたいですね。
オプションにもそれらしいものが見つかりませんでした。
FreeBSDの日本語マニュアルを見る限りはどうも互換性なさそうです。

面倒なんで試していませんが、一定の処理にかかった時間を測定して
負荷を調べようかと思うのですが・・・
これもいまいち正確さに欠けそうだし。何よりめんどうだし(^^;

あっ因みにそれほどの正確さは求めていません、そもそもそんなに正確に
数値を取れないと思ってますから。

何か方法を知っていましたら、よろしくお願いします。
OSはVineLinuxです。

No. 751 # 68user [URL] [E-mail] 2000/02/25 (金) 06:14
> promptの説明文の中にHTMLタグが表示されてましたよ
どうもです。直しておきます。
# 実は気づいていたんだけど、自作の変換フィルタをどう
# 直せばよいのかわからくて悩んでいるところです。

> CGIでサーバーの負荷率
load average を求めたいなら uptime や rup localhost
などが使えると思います。

> open(SYS, "top|");
入力に tty を読んでるのなら、top < /dev/null で
いけるかもしれません (ダメかも)。

なお load average は、違うマシンや OS と比較は意味が
ありません。わかっておられるかもしれませんが、念のため。

No. 752 # スナフキン 2000/02/25 (金) 23:49
uptimeの情報ありがとうございます。
なるほどこれなら何とかなりそうです。

手持ちのコマンドリファレンスには uptime のことが載っていません
でしたが、man には掲載されていたので、これでうまくいきそうです。

/usr/bin/ や /usr/local/bin/ にあるコマンドを一つづつ調べるのも
あまりの数に手を焼いていたところなので助かりました。

>入力に tty を読んでるのなら、top < /dev/null で
やってみましたが駄目でした。

>なお load average は、違うマシンや OS と比較は意味が
>ありません。わかっておられるかもしれませんが、念のため。
すいません、意味がよくわからないのですが、「この結果を元に
ほかのサーバーと比較するには意味が無い」と言う意味でしょうか。

単純に、マシンの反応が遅い時の原因が、回線の影響かサーバーの負荷
かを調べる用途に使うつもりです。

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

Prev< No. 747〜752> Next  [最新発言に戻る] [過去ログ一覧]