トップページphp
1001コメント325KB

CGIだけど、なんか質問ある? Part 12

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん04/10/10 00:04:06ID:???
CGIの運用に関する質問スレッドです。

※ CGIはウェブサーバ上でユーザプログラムを動作させるための仕組みであり、
Perl等特定の言語に依存するものではありません。

Perlのコーディングに関する質問は、専用スレでお願いします:
[Perlコーディング初心者質問スレ Part 38]
http://pc5.2ch.net/test/read.cgi/php/1097158988/

CGIとPerlの区別がわからない、という人はとりあえずこちらへ:
[△▲ WebProg 初心者の質問 Part10 ▼▽]
http://pc5.2ch.net/test/read.cgi/php/1095633323/

過去ログ・関連スレッドは>>2-10あたりに
0226nobodyさん04/12/17 17:18:09ID:???
>>225
家とサーバの環境が違うんだろ。
0227nobodyさん04/12/17 17:46:33ID:???
>>225
マルポ
0228nobodyさん04/12/17 18:25:03ID:???
>>227
カ゚ッ
0229nobodyさん04/12/18 01:14:01ID:???
        (⌒Y⌒Y⌒)
      /\__/     / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     /  /    \  <  もういいだろ。糞スレFIN
    / /ヘニヾ ノヘ\   \_____   ,-v-、
  (⌒ /  ''=・=',i i.'=・=''|               ./ _ノ_ノ:^)
. (  (6    ./ | |`ヽ |             / _ノ_ノ_ノ /)
  ( |  ./  rl_.|  ヽ| ビ゙シッ!!!         / ノ ノノ//
     \   ,r-ー-、 /         ____  /  ______ ノ
   / i, \__个_/ \____("  `ー" 、    ノ
 ー'/  'i. ヽ、 ,二ニ/   \       ``ー-、   ゙   ノ
  /   'i、 /\ /      >       ( `ー''"ー'"
  \   'i," (__) /   /         \ /ノ
0230nobodyさん04/12/18 19:54:57ID:???
#!/usr/local/bin/perl
0231nobodyさん04/12/18 22:10:59ID:SguX1kSW
www.wsj21.net/cgi/cgi-ecoup.html

こちらの画像あぷ掲示板「ECOUP」を使いたい
んですが、この掲示板は画像ダイエット機能が働く
みたいで、JPEGヘッダを削るらしいんです。携帯の
待ち受けサイトに使用する場合、画質とかに影響は
あるんでしょうか?

せっかく職人さんが綺麗なのをアップしてくれても、
画質が落ちたらマズイと思いますて。。

携帯からなんで、見にくかったらすみません。
よろしくおながいします。
0232nobodyさん04/12/19 00:25:26ID:???
>>231
画像ヘッダ情報は、画質に影響ない部分だよ。
作成した日付やソフト名などの付加情報だから。
023323104/12/19 02:30:39ID:MFfnh9Uy
>>232
ありがとうございます。
検索してみたんですが、Exif情報というのがそれに
あたるんでしょうかね。。?画質に影響は無いんですね!
本当にありがとうございました。
0234nobodyさん04/12/19 23:12:53ID:Wrsvun+X

http://doglover.cool.ne.jp/dog/
ここで使ってるカスタマイズ版、配布止めてるみたいなのですが
誰かお持ちじゃないですか。宜しくです。
0235nobodyさん04/12/19 23:47:56ID:W6XRuLU0
CGIBOY様で配布されてるようなチャットを探しています。
・パスワード入室可能 ・ROM閲覧が可能 ・他のページから参加者数がわかる
どこかで配布しているところはないでしょうか?
今日半日探していたのですが、見つからなくてここにやってきました。
どなたかご存知の方、教えてください…。それこそ教えてチャンでごめんなさいです。
0236nobodyさん04/12/19 23:54:11ID:???
>>235
こちらへどうぞ。

【CGI】こんなCGI探してますver.15
http://pc5.2ch.net/test/read.cgi/hp/1097762828/
0237nobodyさん04/12/20 02:43:54ID:???
>>234
・ 配布中止/配布元不明スクリプトが欲しい人はダウンロード板へ
0238nobodyさん04/12/20 21:39:23ID:???
質問。スレ違いなら誘導よろ。

初期画面表示→重い処理→画面更新(処理結果を反映)
ってなことを、CGI+Perlでやりたい。

$| = 1;
if (my $pid = fork()) {
  waitpid $pid, 0;
  header();
  print "<html><head></head><body>hoge</body></html>";
}
elsif (defined $pid) {
  header();
  print "<html><head></head><body>foo</body></html>";
  close STDOUT;
  # この後、重い処理 
}
else {
  exit 1;
}

こんな具合なコードを書いてみたんだが、親プロセス終了まで
画面が返って来なくてうまくいかない。
どうすればいいか教えてちょ。
023923804/12/20 21:40:08ID:4AjVflcZ
追記。
header()は適当なヘッダ出力関数ね。
0240nobodyさん04/12/20 23:41:56ID:???
>>238
それ動くの?
0241nobodyさん04/12/21 18:16:30ID:???
>>238
そもそもCGIとかforkとかわかってる?
0242nobodyさん04/12/21 22:48:52ID:???
限りなく動きそうにないが
0243nobodyさん04/12/22 02:38:21ID:???
重い処理が何かわからんが俺ならこうするな。

header();
print "<html>重い処理をがんばっちょりまんがな";
#重い処理
while(1){}
print "おわったぜい</html>";
exit;
0244nobodyさん04/12/22 05:26:44ID:???
>>241
わかってるわけないだろ
0245nobodyさん04/12/22 17:54:20ID:???
ttp://rsot.hp.infoseek.co.jp/( ttp://rsot.hp.infoseek.co.jp/cgi-bin/cbbs.cgi )に
ttp://www.cj-c.com/cgi_s/cbbs.htm設置したいんだけど
エラー500が返ってくる。
インフォシークのヘルプだと
文法違い、サーバの仕様が違うと返ってくる。
パーミッション、パスなどは、正確。
ダウソしたものをホームとパスワードを書き換えUP下だけのものです。
診断お願いします。
0246nobodyさん04/12/22 17:56:01ID:???
>>245
スレ違い

■ 設置の方法がわからない場合には
CGI設置について質問
http://pc5.2ch.net/test/read.cgi/php/1054216089/15(テンプレ)
0247nobodyさん04/12/22 17:57:03ID:???
すいませんでした。
>>246
迅速なレスどうもです。
0248nobodyさん04/12/23 01:35:12ID:???
JavaScriptでHTML上にCGIを表示させる方法はありますか?
例えば、数箇所の掲示板の最初の書き込みタイトルをHTML上に並べるとか。
お願いします。
0249nobodyさん04/12/23 01:36:01ID:???
248です。最初じゃなくて最新の間違いです。
0250nobodyさん04/12/23 01:39:12ID:???
言葉の意味を考えてモノ言えよ。
CGI で表示するのが HTML や JavaScript。
同列に考えんな。
0251nobodyさん04/12/23 01:40:06ID:???
きっとperl=CGI
0252nobodyさん04/12/23 02:02:58ID:???
>>250
読解力ないな。
0253nobodyさん04/12/23 02:10:46ID:???
>>252
馬鹿なんだろ。
0254nobodyさん04/12/23 02:26:27ID:???
>>248
要するに行き付けの掲示板の更新チェックがしたいんだろう?
まず「JavaScriptで」ってことは板違いじゃねーか。
CGIならできるが、JavaScriptはかなり無理くさい。
CGIの場合LWPとかSocketがキーワードになるだろうから調べるといい。
0255nobodyさん04/12/23 04:38:45ID:???
掲示板が同じ場所にあるなら JavaScript だけでも解決することは可能。
インラインフレームに表示して innerHTML を適切に書き換えればいい。

また、掲示板本体を弄れるんであれば、
ヘッドラインを document.write で吐かせて <script> の src で指定すればいい。

どっちもできないんであれば、>254の通り。
0256nobodyさん04/12/26 00:56:58ID:dNeoIy6t
公的機関や、会社などでよく使用されている
URLフィルタリングを無効にするようなCGI
は存在していますか?
ページ内語句のチェックまでされていると無理そうですが
URLだけなら、何とかなるのかなと思いまして。
0257nobodyさん04/12/26 01:35:49ID:???
はい?
0258nobodyさん04/12/28 19:09:14ID:???
Infoseek鯖なんですけど

require './cgi-lib.pl';

をいれると

CGIプログラムエラーのため表示することが出来ません。(500 Internal Server Error)

となってしまいます。
require './cgi-lib.pl'; をコメントアウトすると
CGIプログラムエラーのため表示することが出来ません。(500 Internal Server Error)
はでなくなります。

どうすればよいでしょうか?
0259nobodyさん04/12/28 19:41:59ID:???
cgi-lib.plをアップロードしてないだけだろ
0260nobodyさん04/12/28 19:48:34ID:???
プログラムのエラーを書きなさいよ
0261nobodyさん04/12/28 19:59:44ID:???
たぶん>>259の通りだと思います。
で、cgi-lib.plをPerlインスコしたディレクトリを探したけど見つかりませんでした。
cgi-lib.plってのはなんですか?どこにあるものですか?
0262nobodyさん04/12/28 20:04:50ID:???
更に他力本願なやつは放置でいいな
0263nobodyさん04/12/28 20:58:36ID:???
モウカイケツシタヨ
0264nobodyさん04/12/28 21:52:58ID:???
別に教えてやってもいいじゃないか

>>261
http://cgi-lib.berkeley.edu/
0265nobodyさん05/01/04 05:16:13ID:???
ttp://www.web-terakoya.net/basic/a_2.html
こちらのページに
> CGIの掲示板にアクセスカウンターを表示しようとしてSSIのタグを入れても表示されません。
> CGIスクリプトの中ではSSIは動作しないからです。
と書いてあります。
が、以前どこかでCGIスクリプトの中に別のCGIの結果を貼り付けるって事が出来るっていう記述を見た覚えがあるんですが、どうでしょうか?
やり方をご教示ください。
言語はPerlです。
0266nobodyさん05/01/04 18:23:36ID:???
>>265
まずCGIとSSIの違いを勉強せよ。
026726505/01/05 20:01:40ID:???
>>266
徹夜明けに質問するんじゃ無かったよ。
スマソ

あらためて
index.htmlにアクセスカウンタを表示するのにSSIを使ってます。
<!--#exec cgi="counter.cgi"-->
で、今回CGIが吐き出すページにもSSIの実行結果を貼りたいと考えております。
が、CGIが吐き出すページに<!--#exec cgi="counter.cgi"-->を書いても、SSIの実行結果が貼れません。

何か別の方法でSSIの実行結果をCGIが吐き出すページに貼る事ができますか?
0268nobodyさん05/01/05 20:10:58ID:???
shtml
0269nobodyさん05/01/05 20:17:00ID:???
>>267
apache2のfilter機能を使えば可能。
でも普通そういう設定はしないし、他のweb鯖の場合は知らん。
管理者さんに聞いてごらん。
0270nobodyさん05/01/05 20:17:21ID:???
>>267
>>266
0271nobodyさん05/01/06 15:18:27ID:???
http://cgiroom.nu/list/onlyone/index.html

onlyoneが配布してあるサイトってないのか。。
本サイトはDLできない
0272nobodyさん05/01/06 15:32:21ID:???
あっそ
0273nobodyさん05/01/09 16:03:31ID:???
>>267
静的なページを吐いておいて、
そのページへlocationで飛ばす。
0274nobodyさん05/01/15 15:33:30ID:NB9cGt7y
SJISページ上で、知人のCGIとデータリンクをするために、
故あって、アドレスの文字列をEUC-JPにURLエンコードしたいのですが、
そんな事が出来るのでしょうか?

SJIS上で↓
$word =~ s/(\W)/'%' . unpack("H2", $1)/eg;
とやっても、当然SJISのデータしか出てきません。

出来るのであれば、ご教授いただけると嬉しいです。
0275nobodyさん05/01/15 22:18:22ID:???
>>274
jcode.pl
Jcode.pm
0276nobodyさん05/01/16 21:30:09ID:???
$i++;
$temp = sprintf "%02d", $i;
$file = "$note/$temp$ex";

連番でファイルを保存しようとやってみたのだが、
うまくいかない。。。
0277nobodyさん05/01/16 22:55:40ID:???
>>276
日本語使ってくれ
0278nobodyさん05/01/17 19:31:40ID:???,
i was japanese
0279nobodyさん05/01/17 20:19:19ID:???
>>278
じゃあ、今は何人
0280nobodyさん05/01/17 20:43:37ID:???
なあclipってCGI知ってるか?
0281nobodyさん05/01/17 23:25:49ID:???
>>276
以下の内容を読み替えて使ってくれ

$src = '保存ディレクトリ'
if ($file ne "") {
($ex) = ($file =~ m|(\.[^./\\]+)$|);

$num++;
$tmp = sprintf ("%02d", $num);
$newfile = "$src/$tmp$ex";

open(FILE, "> $newfile") or die;
flock(FILE, 2);
if (defined $file) {
while (<$file>) {
print FILE $_;
}
}
close FILE;
此れでどうよ?

ファイル名を取得して、拡張子($EX)と文字列に分ける、拡張子(EX)そのままで、
ファイル名を変更するのだが、$num++で連番を生成、生成した連番を二桁("%02d")で表記($tmp)
$newfile = "$src/$tmp$ex";なのだが、此れは、ファイルのある場所とファイル名を保存するものとみた、
此れでいけると思うがどうよ?
0282nobodyさん05/01/18 02:52:34ID:???
>>281みたいなやつってどうよ?
0283nobodyさん05/01/18 14:31:43ID:???
ドコモの携帯のアプリケーションと連動させたCGIを作成しようとしていて
CGI側で作成した.txtにアプリ側から書き込み、こちらへ保存させようとしています
CGI側で作成した

open KEITAI,">>$DataDir\/test.txt";

のパスをアプリへ送るにはどうすればよいでしょうか

友人がアプリの方を作成してまして、パスを貰えればファイルに文字列を記述出来るそうなのですが
物凄い初心者です、すれ違いなら誘導してもらえると助かります
0284nobodyさん05/01/18 17:06:43ID:???
本を一冊買えば終わりだ。

ヒントは/i/ez
028581405/01/19 02:11:49ID:p+skwzeW
一日のアクセスログが想定で10〜20Mになってしまうのですが、
どの程度で動作が重くなったり支障が出てくるものでしょうか?
一般的なものはログの行数を1000行までとしている所が多いようですが。
数MBを超えるようなログはどのような方法で保存が適しているのでしょうか?
0286nobodyさん05/01/19 09:55:31ID:???
#!/usr/bin/perl
use strict;
use warnings;
require "./jcode.pl";
require "./cgi-lib.pl";
print "Content-type: text/html\n\n";
print "<HTML>\n";
print "</HTML>\n";

というtest.cgiを動かすと500エラーが出ます。
jcode.plとcgi-lib.plとtest.cgiは全て同じディレクトリにあり、
全てeuc_jpのlfです。test.cgiは755、*.plは644です。
require "./jcode.pl";の行をコメントアウトすると動き、
コメントを外すと500が出ます。
これはどのような原因が考えられるでしょうか?
0287nobodyさん05/01/19 10:18:55ID:5+w2R1ze
>>286
#!/usr/bin/perlの後に
use CGI::Carp 'fatalsToBrowser';
を追加する。

まぁ、大方Perlのパスが間違ってるか、Perlのバージョンが5.005以下でuse warningsに対応してないかだと思うがな。
0288nobodyさん05/01/19 11:06:33ID:mxYphXm6
>>287

Software error:
Unrecognized character \x01 at ./jcode.pl line 343.

Wed Jan 19 11:04:26 2005] insert.cgi: Unrecognized character \x01 at ./jcode.pl line 343.
Compilation failed in require at test.cgi line 7.

だそうです…。

>まぁ、大方Perlのパスが間違ってるか、Perlのバージョンが5.005以下でuse warningsに対応してないかだと思うがな。
Perlのパスは/usr/bin/perlであってますね。/usr/local/bin/perlからもシンボリックリンク
張ってるのでどちらからでも行けますが。バージョンは5.6.1です。
0289nobodyさん05/01/19 11:39:39ID:???
>>288
原因がわかってよかったね
0290nobodyさん05/01/19 11:45:46ID:mxYphXm6
>>289
原因は何ですか?
jcode.plのバグだとは思えませんが。
0291nobodyさん05/01/19 12:13:23ID:???
>>290
ググれよ。
jcode.plの343行目にゴミがある。それ本当に正規のjcode.plか?
0292nobodyさん05/01/19 12:19:34ID:mxYphXm6
>>291
ここの
http://www.srekcah.org/jcode/
これですが。
http://www.srekcah.org/jcode/jcode.pl-2.13

ちなみに343行目は
$esc_0208 = "\e\$$esc_0208" if length($esc_0208) == 1;

あとググれってのは何をでしょうか?
0293nobodyさん05/01/19 15:52:23ID:???
>>286の8行だけじゃどう試してもエラーなど出ない。
それにinsert.cgi:とは何よ?
なんにしてもお前の書いたコードに間違いがあるだけ。
0294nobodyさん05/01/19 16:59:38ID:???
>>292
そこから今ダウンロードしてみたけど343行目はそこじゃなかったよ。
ファイルが壊れてるんじゃないの。
jcode.plをダウンロードしなおしてみたらどう
0295nobodyさん05/01/19 17:34:10ID:sZQcp1a5
初心者です。質問します。
>>1
↑みたいなリンク先を表示している所をクリックした時に
一緒にデータを送りたいと考えています。
送り先はCGIで、そのリンク表示している文に関連するデータを受け取って
それの一覧を表示できるようにしたいのです。
フォームの送信ボタンをクリックした時と同じような感じです。
何か方法はあるでしょうか?お願いします。
0296nobodyさん05/01/19 18:21:56ID:???
>>295
QUERY_STRINGでいいんじゃないかな
029729505/01/19 18:30:34ID:sZQcp1a5
えぇと、それは
CGI名の後に?をつける方法ですか?
〜CGI?name=$変数名
みたいにするので大丈夫ですかね?
0298nobodyさん05/01/19 18:53:50ID:???
>>297
大丈夫かどうかは送り先のCGIに聞いてください。
029929505/01/19 19:47:25ID:sZQcp1a5
大丈夫じゃないみたいです。
上の文をリンク先に貼るだけでいいんですよね?
受け取り先のCGIがどこか間違っているんでしょうか?
0300nobodyさん05/01/19 20:17:47ID:???
>>299
受け取り先のCGIとよく話し合ってください。
030129505/01/19 20:52:24ID:sZQcp1a5
話し合いに成功しました。ご迷惑をおかけしました。
0302nobodyさん05/01/20 03:30:40ID:???
質問を一つおねがいします
ttp://inferno.x-eye.net/main/index.shtml
このサイトにあるような簡式BBSなんですけど
うちのサイトにも同じもの使おうと思っていろいろサイト回って探したけど
こういうCGIはみつからない…
これってもしかして自作?
もしどっか公開してるとこあるならよかったら教えて欲しいです。
0303nobodyさん05/01/20 03:45:58ID:???
>>302
【CGI】こんなCGI探してますver.15
http://pc5.2ch.net/test/read.cgi/hp/1097762828/
0304nobodyさん05/01/20 04:18:39ID:???
>>303
thx
0305nobodyさん05/01/20 15:24:10ID:6RTB33WG
PerlでCGI組むときに、表示用のHTMLと、
処理を行うプログラムをファイル分けするのが
一般的だと思うけど、HTMLファイル内に埋め込む
置換用の文字列ってみんなどんな書き方してる?

ちなみにオレは %__、 __% でくくってる。
<body>
%__message__%
</body>

みんなはドン何?
0306nobodyさん 05/01/20 15:43:36ID:???
>>305
漏れは

<body>
<!-- {message} -->
</body>
0307nobodyさん05/01/20 16:37:13ID:???
XMLのprocessing instruction

<?foo-incl message?>
0308nobodyさん05/01/20 16:57:29ID:???
すいません、どこで質問すればいいのか分からないのでとりあえずここに……
PerlのCGIなんですが、以下のようなコードをシェル上で実行するとシグナルを捕まえられるのですが
CGIとして呼び出すとタイムアウトします。
どなたか原因分かる方おられませんでしょうか。

Perlがバージョン5.8.4、Apacheが2.0.52のsuexecありです。
CGIはmod_perlではなく独立したプロセスとして呼び出しています。
----ここから
#!/usr/bin/perl
print "Content-type: text/html\n\n";
eval
{
local $SIG{ALRM} = sub { die "timeout" };
alarm 2;
sleep (10);
};
alarm 0;
if ($@)
{
if ($@ =~ /timeout/)
{
print ("しぐなるげっと");
exit;
}
}
print ("しぐなるろすと");
exit;
----ここまで
0309通りがかり質問人05/01/20 18:47:22ID:ZFFWUrXl
perlでCGIについて質問です。
例えば仮にhttp://XXX.com/というディレクトリーがあったとして、
そのhttp://XXX.com/の後に例えばwww://yyy.com/test.mp3と書くとリンクが付くページを表示するようにしたいんです。
つまり、上記の場合、http://XXX.com/www://yyy.com/test.mp3にアクセスすると、
http://www://yyy.com/test.mp3へのリンクがついたページが表示するようにしたいんです。
これを実現するために私が考えたのは以下のソースです。
ファイル名はindex.cgiにしました。これによって、index.cgiを省略できるからこれで実現できそうと思ったのです。
しかし、これではhttp://XXX.com/以下もディレクトリまたはファイル名と見なされてnot foundになってしまいます。
パラメータを示す「?」を付けないと、つまり、
http://XXX.com/?www://yyy.com/test.mp3と書かないと実現できません。
「?」を書かないでhttp://XXX.com/www://yyy.com/test.mp3で実現できるようにしたいんです。
よろしくお願いします。

つまり、2chにURLを書いた場合に表示されるこれと同じ機能を作りたいわけです。
http://ime.nu/www.yahoo.co.jp

次の書き込みにソース書きます。
0310通りがかり質問人05/01/20 18:47:52ID:ZFFWUrXl
1コ前の書き込みの者です。

##############ここから################################################

#!/usr/local/bin/perl

$buffer = $ENV{'QUERY_STRING'};


print "Content-type: text/html\n\n";
print "<html>\n";
print "<head>\n";
if($buffer eq ""){
print "<title>CGI</title>\n";
print "</head>\n";
print "<body>\n";
print "<h1>\$bufferが空ならこれを表\示</h1>\n";
}else{
print "<title>右クリできるようにする</title>\n";
print "</head>\n";
print "<body>\n";
print "<h1><a href=\"http://$buffer\" target=\"_blank\">http://$buffer<;/a></h1>\n";
}
print "</body>\n";
print "</html>\n";
###############ここまで###################################################
0311nobodyさん05/01/21 01:10:18ID:AR9vVUmK
会員約500人分のデータ(URLやサイトの紹介)をWeb上管理したいですが、
このぐらいの数を管理するのに良い方法ってありますか?
使っているサーバはPHPは使えません。

今まで修正・削除などを
「ファイル開く→全データ取り込む→該当データを検索→処理→処理結果を反映して保存」
この単純な方法でやってきたんですが、もっと良い管理方法がありますか?
031231105/01/21 01:12:58ID:AR9vVUmK
追加 現在Perlでやっています。
できれば慣れているPerlで良い方法があればいいのですが、
それよりも良い方法があればそれも勉強してみます。
0313nobodyさん05/01/21 01:42:18ID:???
「良い」つーのが何を指してるのか分からん。
つーか、何か困った事が起きてるのかどうかさえ分からん。
悩みが無いなら何もしなくてよろし。
031430805/01/21 10:26:43ID:3fuNtqob
Cでも動かん_| ̄|    ○キュポーン

SIGKILLを自分に投げつけると終了し、SIGTERMを自分に投げつけても終了しない
という挙動を見るに、シグナルハンドラが上手く書き換わってないのかとも思うんですが
どなたか同様の症状を経験した方おられませんか……

#include <stdio.h>
#include <signal.h>
void sig_alarm(int sig)
{
printf("get\n");
}
main()
{
printf("Content-type: text/html\n\n");
signal(SIGALRM, sig_alarm);
alarm(1);
pause();
exit(0);
}
↑これをコマンドラインから実行するときちんとシグナルを受け取ってくれますが、
CGIとして実行するとpause()で止まります。
0315nobodyさん05/01/21 11:22:15ID:???
main.cgiの中で定義した$varを、main.cgiからFORMで呼んでるsub.cgi
<FORM METHOD="POST" ACTION="sub.cgi">
の中からグローバル変数として参照したいんですが、どうやるのが一般的でしょうか?
use strictしてるので$varの宣言で何もつけないの怒られるのです
0316nobodyさん05/01/21 11:29:03ID:???
>>315
hiddenで渡せよ。
別CGIは別プロセスなんだからメモリ共有でもしなきゃ
参照などできん。
0317nobodyさん05/01/21 11:34:12ID:???
>>316
そうですか
ありがとうございました
0318nobodyさん05/01/21 11:39:25ID:???
>>316
あっと、それではsub.cgiの中でrequire "subsub.pl"したとして
subsub.plの中からsub.cgiにhiddenで渡した$varを参照するのはどうやるのでしょう
0319nobodyさん05/01/21 11:55:30ID:???
>>318
requireってことはそこにsubsub.plのコードを書いたと同じことなの
渡すも何も、そのまま参照すればいい
0320nobodyさん05/01/21 12:05:31ID:???
>>319
requireした行の時点でsubsub.plの内部の変数がチェックされますか?
requireした後でmy $var = $form{'var'};して、その後でsubsub.plの
$varを使うサブルーチンを呼び出してるのですが、500が出ます
0321nobodyさん05/01/21 13:29:56ID:???
>>320
myをつけたらアクセスできるわけないでしょ。
スコープを勉強しなさい。
0322nobodyさん05/01/22 01:27:23ID:???
POSTから
read (STDIN, $buffer, ENV{'CONTENT_LENGTH'};
のように文字列を読み、$bufferをファイルに出力したところ
改行部分までしか書き込んでくれなかったのですが
改行より後ろの部分も書き込ませることは出来ないのでしょうか?
改行までしか入ってないとかそういうのなんでしょうか
初歩的っぽい質問ですません
0323nobodyさん05/01/22 14:56:53ID:LxfbGLyv
携帯・PCからのアクセスを判断して振り分けたくて
色々な振り分けCGI試してみたんですが、真っ白の画面でるだけで困ってます。

試行錯誤していると、どうもLocationが動いてないみたいなんです。
Locationを有効にする方法知っておられましたらご教授下さい。

環境
ActivePerl 5.8.6
Tomcat 5.0.28
0324nobodyさん05/01/22 15:45:39ID:???
>>323
鯖がLocation使えることは確認してあるのか?
レン鯖だと使えないところもあったり広告などで邪魔されることもあるが。
032532305/01/22 16:19:25ID:LxfbGLyv
>>324
レスどうもです。

現在はTomcatで自鯖立ててます。
なるべく色々な物入れたくないのでアパッチとの連携もしてません。

現状はTomcatのweb.xmlでCGIの制限を解除して使用出来る状態にしています。
実際表示するだけのような簡単なものは動いてます。

Locationが使えないのは鯖ソフトの問題なのかPerlの問題なのか分かりますでしょうか?
■ このスレッドは過去ログ倉庫に格納されています