WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:cgiの起動がApacheかcrontab /bin/shからかの判別法

0:[投稿] 芙蓉 [2006/02/17 23:23 ] [環境: i386-linux2.4 perl5.6 ApacheV?]

同じperl-cgiスクリプトに
ブラウザからurl      http://foo.bar.com/~hoge/cgi-bin/test.cgi?argv0argv1
crontabで/bin/shから /usr/local/bin/perl /home/~hoge/cgi-bin/test.cgi argv0 argv1
のどちらから起動されたか区分したいのですが、argv0,argv1無しのデホルト処理も予定しており、
どうしたら良いのでしょうか?


1:[回答] WBEL [2006/02/17 23:55 ]

%ENVとかの内容とかから判断するといいでしょうね。


2:[完了] 芙蓉 [2006/02/18 20:26 ][URL]

実験結果、crontab経由 /bin/sh env; ではSHELL,OLDPWD,PATH,PWD,HOME,SHLVL,LOGNAME,_ の8要素出力、
Apache cgi経由のperl -e 'print `env`'; ではHTTP_*,QUERY_*等々32要素で、
双方殆ど異り、共通にあるPATHも値が全く異り、起動区分判別可能なことが分りました。一寸気づかなかったこと、
大変ありがとうございました。

回答(必須): 状態:

お名前(必須):

URL:




[戻る]