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

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

■ このスレッドは過去ログ倉庫に格納されています
0001ななし ◆E6qQ.htN7o 03/01/03 02:56ID:H5ub4PWW
CGIの運用に関する質問スレッドです。

※CGIは特定の言語に依存するものではありません。

※Perlのコーディングに関する質問は専用スレがありますのでそちらでお願いします。
  ↓
【Perl】初心者コーナー Part18
http://pc.2ch.net/test/read.cgi/php/1037797479/l50

過去ログ・関連スレッドは >>2-5 あたりに
0052nobodyさん03/01/09 18:48ID:???
>>51
不可能
0053nobodyさん03/01/09 23:31ID:???
それをやられたら泣くだろ
だからねえんだYO!

blinkのやり方はActiveXぽいな。使ったことねえから詳しくしらないが。
0054nobodyさん03/01/10 14:00ID:???
>>53
DynamicHTMLで普通にできそうな予感。
0055nobodyさん03/01/10 22:50ID:???
>>51
そんなプライバシーに関わるデータ抜き取って何しようっての?
発想が厨なんだよ。
ちったあ相手の身になって考えてみろっての。
0056nobodyさん03/01/13 22:11ID:tF1UpiEy
htmlファイルが読み込まれる時に同時にcgiを実行させたいのですが、どうすればよいのでしょう。
とりあえず考えたのはcgiから何か画像を出力させて、<img src="hoge.cgi">なのですが、
実行させるためだけにわざわざ画像を表示させるのはなんか変な感じがします。
何かスマートな方法は無いでしょうか。
0057nobodyさん03/01/13 22:15ID:???
>>56
SSI
0058nobodyさん03/01/13 23:00ID:???
>>56
SSI使えないなら
<IFRAME SRC="hoge.cgi" WIDTH="0" HEIGHT="0">
</IFRAME>
とかでもいいかもね
0059nobodyさん03/01/14 02:13ID:???
>>56
そのCGIからHTML出力させろ。
0060nobodyさん03/01/14 16:51ID:???
>>58
IE限定&IMGの3倍大げさ。
0061nobodyさん03/01/14 20:38ID:???
>>60
ネスケでも6以上ならIFRAMEに対応している。
そういう俺は4.78だけど。。。
0062nobodyさん03/01/14 21:28ID:???
ブラウザ依存のHTML吐き出すようなスクリプトは糞
0063nobodyさん03/01/15 00:54ID:???
HTMLの仕様に準拠していないUAは糞?
0064nobodyさん03/01/15 09:49ID:bv4lo3d6
レンタルサーバ内のplaintextデータ等をバックアップする場合、
何か良いは方法ないでしょうか。
例えば会員データとかで、住所とか名前が入ってるものをメールでそのまま
送るなんて事できないし、圧縮してメール添付ってのも危険ですしね。
専用サーバ借りているのですが、su貰えない&telnet使用可ですが、
固定IP必要なので実質使えないので、CGIで代わりにTELNETモドキやってる程度。
bdesが良いらしいが入ってない。
何か良い方法をご存知の方いましたらRESPLZ。
00656403/01/15 09:59ID:???
でかいファイルでもperlのcryptでOKかな。やってみよう。
00666403/01/15 10:01ID:???
と、思ったけど、デコードできんか...........一人カキコスマン
0067nobodyさん03/01/15 10:25ID:???
>>64
何でメールするん?
FTPで自分のパソにダウンロードすればいいだけの話では。
0068nobodyさん03/01/15 10:59ID:wVEDeB5S
perlスレでcgiに行けといわれたので、こちらにきました。

管理人(私)だけが項目を設定し、来訪者に投票してもらう
という投票・ランキングcgiを設置しようと出来合いの探したところ
項目が140あるので検索機能がついたvote.cgiを探したところ、
ttp://www.c-5.ne.jp/~hamachan/cgihtm/jiten.htm
上記↑で配布されている「簡易データーベース」というものにたどり着きました。
プログラムが古いので
require './jcode.pl';
#-----------------------------------------------------------------
↑これの次の行に↓この一行を追加しました。
open STDOUT, '>-';
jcode.plも新しいバージョンに変えて、説明書きにあったとおり
「ずっこけ物知り辞典」という表示がページに出るところまでは
うまくいったのですが、実際に登録・検索しようとすると、
「ページが見つかりません」、との表示が出ます。
ちなみに、Tripodを使っています。

FTPソフトで見ると、cgi-binフォルダの中に
jiten.cgi、jcode.pl、jiten.docが入っていますが
jiten.docのファイルサイズは0になっています。
count.docファイルは生成されていないようです。

perlスレでTripodではcgi-binフォルダ以下に画像などの
ファイルは置けないとなっているから、とのレスをいただきましたが、
ttp://www.tripod.co.jp/guides/cgi.html
の中頃少し上をみると、スクリプトによって、使用されるHTMLファイルや
テキストファイルは、すべてcgi-binの中にある必要があります、とあるので
これは関係ないかと思いました。

どこをどう改善すればよいのか、ご指導よろしくお願いします。
0069nobodyさん03/01/15 11:25ID:???
>>68
単に
$url_pass = "http://www.hoihoi.ne.jp/~foo/jiten/jiten.cgi";

を自分のURLに設定していないだけなんじゃ・・・
00706403/01/15 11:56ID:???
>>67 毎日、簡単にバックアップしたいので。
FTPでも暗号化しないと、hackされる可能性がある気がするのですが・・・・・。

ネットワーク上で盗用されない為にも、サーバでファイルを暗号化し、
他サーバにコピーが理想。
大したファイルじゃないけど”もしも”の事を考慮してしまう今日この頃。
だんだんCGIと関係ない方向に向かってるかな.....
0071nobodyさん03/01/15 13:14ID:???
>>70
誰がhackすんの?
こういうのに限って、データファイルをドキュメントルート以下に置いてたりするんだよな。
0072山崎渉03/01/15 13:32ID:???
(^^)
00736403/01/15 16:27ID:???
>>71 はぁ。
0074nobodyさん03/01/15 17:02ID:???
CGIしか使えないならCGIで処理するしかないだろうなぁ。
CPANあたりにある暗号化のを使って自分で作るのがいいんじゃない?
需要なさそうだしその辺に転がってるCGIじゃ見つからないと思うよ。
0075nobodyさん03/01/17 20:16ID:???
CGIの内部で画像ファイルを作って出力しようと思っているのですけど、
そのCGIの名前が makepng.cgi という名前だとブラウザからDLしようと
するときの名前がnamepng.cgi.pngという名前になってしまいます。
# 手で書き換えればいいのだけれど。
makepng.cgi?foo=1&bar=x のときにはダウンロードするときの名前を
giko01x.png のようにCGI側で調整してやる方法ってありますか?
ブラウザはIEのみと考えてもいいです。
0076nobodyさん03/01/17 21:57ID:UZGmf3mg
>>75
直接ブラウザに画像データを送ったらファイル名はつけられない。
いったんサーバ側に画像ファイルとして保存してからならなんとかなるでしょう。
0077nobodyさん03/01/17 23:02ID:???
なるほど、了解しました。
0078nobodyさん03/01/18 00:23ID:O9FxKTGG
来客者は書き込めるが、他の来客者が書いたものは見られないようなcgiってありますか?
00797803/01/18 00:24ID:O9FxKTGG
追記

当然管理人は見られます。
管理人以外が過去の書き込みが見られないようなゲストブックみたいなやつがほしいんです。
0080nobodyさん03/01/18 00:37ID:???
>>78
メールじゃダメなのか?
0081nobodyさん03/01/18 22:36ID:vrB72zE5
http://www.ruby-lang.org/ja/man-1.6/?cmd=view;name=%A4%CF%A4%B8%A4%E1%A4%CB
↑このサイトですけど、URLが hoge.cgi?〜 見たいになってなくて、
スラッシュの次にいきなり?になってます。
これってどうなってるの?
0082nobodyさん03/01/18 23:28ID:???
掲示板CGIの中に別プログラムのCGIを挿入したいのですが、
掲示板CGIのHTMLスペース内にSSIを入れて実行しても
そのままタグが表示されてしまいます。

どのようしたらよいのか教えてください。
0083超シロウト03/01/18 23:47ID:ovwKqnQ9
ほんと申し訳ないのですが、
public_htmlと同じ断層にフォルダを作った時、そのパスは
どのように書いたら良いんですか?
.../.../.../フォルダ/
これでいいのかな?
0084nobodyさん03/01/18 23:53ID:???
>>83
相対パスで良いなら./
0085nobodyさん03/01/18 23:54ID:vrB72zE5
>>83
public_htmlを基準にするなら、
../フォルダ
じゃない?
0086nobodyさん03/01/18 23:55ID:???
>>83
相対パスなら./public_htmlまでのパス/../フォルダ/
だと思うけど
0087nobodyさん03/01/18 23:57ID:???
>>86
お帰り下さい。
0088nobodyさん03/01/19 00:02ID:ZcFFkCZZ
おまけ:

. =>ディレクトリ自身へのリンク
.. =>親ディレクトリへのリンク

先頭が/でなければ、それはカレントディレクトリからの相対パスとみなされる。
0089nobodyさん03/01/19 00:04ID:???
>>88
DOS6なら...とか..........とかも可能だったりする。
0090nobodyさん03/01/19 00:06ID:???
ほぉ・・知らんだ。あ。リンクっていうのは、正確には、ハードリンク。
0091nobodyさん03/01/19 00:07ID:???
>>90
つぅことは..を削除したりなんかしたら親御さんがいなくなってしまうのか。
0092nobodyさん03/01/19 00:19ID:???
ディレクトリ、というファイルの実体が削除されるときは、リンクカウンタが0になった時。
なので、..を消しただけでは消えないはず。

だけど、rmとかの普通のコマンドは、消すことを許可しない、から、普通には消せない
0093nobodyさん03/01/19 00:47ID:???
>>82
print `betu.cgi`;
0094nobodyさん03/01/19 01:17ID:???
>>81
index.cgi
0095nobodyさん03/01/19 06:53ID:???
>82
SSIではなく、ちゃんとスクリプト内に組み込みなさい。
普通SSIの使える拡張子は限られてるだろ。
0096nobodyさん03/01/22 22:36ID:/vlxGamR
webpowerのディレクトリゲイト、下記(サポ板)の質問にもあるように
携帯(J-PHONE)からアクセスすると認証後に飛べないようなんですが
どうしたら良いのでしょうか。
ttp://rank.nu/~wpis/bbs/support/bbs.cgi?mode=view;Code=154
上記で丁度同様の質問が出ていたのですが12月から回答がついてないみたいで…
0097nobodyさん03/01/23 05:02ID:???
ブラウザの履歴を調べる方法はないですか?
window.historyで「進む」「戻る」の実行はできますが、ページを移動せずに
そのURLが知りたいんです。
0098nobodyさん03/01/23 11:11ID:???
>>97
ブラウザがその情報を渡してくれなければどうしようもないだろ。
0099nobodyさん03/01/25 01:03ID:???
質問なのであげます。

apeboard+ で何行も改行するにはどうしたらいいのでしょうか。








こんなふうに。

スキン内のスタイルシートの制限は外したのですが…。
0100nobodyさん03/01/25 10:17ID:???
>>99
曽根。
0101nobodyさん03/01/25 10:32ID:A7yEoEyG
ファイルを書き込み中に、そのファイルを読み込むプロセスが発生したとしても、
ファイルの読み込みの成否はともかくとして、ファイルの書き込みは成功して、ファイル自体が壊れることはないのでしょうか?
0102nobodyさん03/01/25 10:38ID:???
>>101
データ書き込み中に読み込みなら書き込みは成功するはずです。

どっちにしろflockは必須と考えた方が幸せです。
010310103/01/25 10:51ID:A7yEoEyG
ありがとうございます。
ファイルの読み込みが、次に行うかもしれない書き込みに影響しないのであれば、
ファイルの読み込み自体はflockの手順を介さなくても平気なんですね
0104nobodyさん03/01/25 10:52ID:???
>>103
必須の意味を考えながら腕立て200回。
010510103/01/25 11:05ID:A7yEoEyG
わっ、そうですね‥
102の末尾に
そうでなければ、介すべき、仕様が明確に決まってなければ、介すべきといった感じなのでしょうか??
という具合ですかね
010610103/01/25 11:19ID:A7yEoEyG
じゃなっくっっーーてェーー
103だ103。
0107ここは?03/01/25 12:01ID:P9onD8CE
http://homepage3.nifty.com/digikei/ten.html
(*~ー゜)ノ ・・・・・心温まるの〜
0108nobodyさん03/01/25 12:29ID:???
書き込みが成功したとしても、後から読み込んだプロセスが(中途半端な)上書きをして
データがごっそり抜けることになる。
図入りで説明してるページも多いから調べてみそ。
0109nobodyさん03/01/25 12:59ID:2kNMQnUp
今PealでBBS作ってるんですが、
ログを保存するのに、1件につき1ファイルが良いのか
1つのファイルに詰め込んでいく方が良いのか・・・。
後者だとすれば何件くらいを目安にすれば良いのやら。。
と、悩んでます。

一体皆さんはどういう感じでつくっているのでしょう?
お奨めなやり方などがあれば教えていただけると嬉しいのですが。
おながいします。
0110nobodyさん03/01/25 13:01ID:???
>>109
>1件につき1ファイル
追加、編集、削除が容易だがどうやって検索するかが問題になってくる。まぁ、簡単と言えば簡単。

>1つのファイルに詰め込んでいく
ファイルをだだ読みすればいいので検索性は良い。しかし追加、編集、削除が面倒。まぁ、簡単と言えば簡単。

どっちにもメリットデメリットがあるのでお好きな方を。と。
011110903/01/25 13:10ID:???
>>110
了解しました。
しばらくは両方使ってみて
自分の好みの方にしてみます。
ありがとでした!
0112nobodyさん03/01/25 16:14ID:???
flockなんか使ってる香具師いるの?
0113nobodyさん03/01/25 16:15ID:???
>>112
(・Д・)?
0114nobodyさん03/01/25 17:20ID:J+PAIJA/
1ファイル1000個くらい詰めた方が効率がよろしい。ので

1ファイルに詰め込むんじゃなくて、1000個づつに分割したらどうかね
0115nobodyさん03/01/25 17:51ID:???
>>114
検索はしやすそうだけど
編集、削除はやっぱり面倒じゃないか?
追加は>>で追記してけば問題なさげ。

1ファイル1投稿だと排他あまり考えなくていいし
最悪トンでも1メッセージだけ。
検索しないなら1ファイルに1投稿が確実。(検索もできなくはない
編集、削除しないなら1ファイルへ数件詰め込めば検索楽。
0116nobodyさん03/01/25 18:02ID:???
>>112
しょっちゅう使っていますがなにか?
0117nobodyさん03/01/25 18:51ID:???
>>116
flockってファイルを開いてからロックするから同時に開けちゃうでしょ?
それでもイィ!!の?
0118nobodyさん03/01/25 18:54ID:???
>>117
無いよりは激しくまし。

と、言うかロックの時点でロックに成功したプロセス以外は待ち状態になるんでは?
ほら、スレッドみたいに。
011911603/01/25 20:13ID:???
>>117
>>118の言うとおり後からflockを呼んだプロセスはロックが解除されるまで待ち状態になる(排他ロックの場合)。
俺はCで使っているけど、Perlもこのシステムコールを呼んでいるだろうから同じでしょ。
0120nobodyさん03/01/25 20:17ID:???
>>118
無いよりはマシなのは当たり前だけど、ロックにflock使うのはどうかと思う。
ファイルを開いてからflockするまでの間に、別プロセスによって開かれる場合が(十分に)あるから。
プロセスIDとtempfile使ってうまくやるべき。
012111603/01/25 20:18ID:???
>>120
そのファイルが様々なプログラム(flockを呼ばないものもということ)から書き込まれるものでなければ問題ないと思うけど。
0122nobodyさん03/01/25 20:19ID:???
実際flock使ったロック方法では負荷テストすると同時書き込みが起こるよ。
0123nobodyさん03/01/25 20:20ID:???
>>121
いやいや、「思う」ではダメよん。こっちは実験してるんだから。
flockを呼ぶプログラムを複数同時起動すると>>122が起こる。これマジ
0124nobodyさん03/01/25 20:20ID:???
>>122
追加書き込みの際、きちんとファイルポインタをファイルの末尾にもってゆく処理をしている?ロックを解除する前にバッファをフラッシュしている?
0125nobodyさん03/01/25 20:21ID:???
>>123
俺もテストしたけど。
何回やっても成功したよ。
環境はLinux(2.4.18)
0126nobodyさん03/01/25 20:22ID:???
つーかそんな信用できないものをシステムコールとして実装するだろうか・・・
0127nobodyさん03/01/25 20:29ID:???
うーん。ということはflockで特に問題ないのか。
追加の時はともかく上書きの時にflockは使えないと思っていたのですが。。
認識違いのようですね。たぶん実験の時は他の部分がバグっていたのでしょう。
すいませんでした。
0128nobodyさん03/01/25 20:30ID:???
>>127
ただしNFS上では使えない。。。
0129nobodyさん03/01/25 20:57ID:???
>>123
OSも書かずに調子乗ってるバカ。

>>125
正常な技術者。
0130nobodyさん03/01/25 21:48ID:Qs+kaqdw
CGIの勉強をしたいのですけど、やっぱりサーバー建てる必要ありますか?
0131nobodyさん03/01/25 21:52ID:???
>>130
ローカルで小さなhttpサーバ立てれば十分です。
0132nobodyさん03/01/25 22:24ID:Qs+kaqdw
実際に使うとしたらやっぱり立てる必要はありますか?
お金を使わないで使う方法はどんなものがありますか?
0133nobodyさん03/01/25 22:26ID:???
>>132
戦う前から負けている。
0134nobodyさん03/01/25 22:29ID:Qs+kaqdw
できればCでCGIしたいんですけど
無料レンタルサーバで、使えるところないですかね?
0135nobodyさん03/01/25 22:29ID:???
>>134
そのレベルを語るにはまだ早い。
0136nobodyさん03/01/25 22:30ID:???
>>132
フリーのウェブサーバーソフトを使えば?

>>134
板違いな質問・・・・
トクトクならgccが使える。
0137nobodyさん03/01/25 22:32ID:Qs+kaqdw
とくとくまじですか?
ちょっと検索してみます。
サンクス
0138nobodyさん03/01/25 22:35ID:???
>>137
自分のマシンにSunOSが入ってないと無意味だぞ。
0139nobodyさん03/01/25 22:36ID:???
>>138
なんでだよ(笑)
telnet使ってサーバー上でコンパイルすればいいじゃない。
それとトクトクはLinux

iswebと勘違いしたとか?
0140nobodyさん03/01/25 22:42ID:Qs+kaqdw
iswebでもgccつかえるのですか?
0141nobodyさん03/01/25 22:43ID:2edfK8fF
IISで画像掲示板(cgi)を表示させるとDLLHOST.EXEがCPU100%
になる”こと”がある。
プロセスはその時2個あるので殺すと普通になる。何で?
0142nobodyさん03/01/25 22:44ID:???





























g
0143nobodyさん03/01/25 22:46ID:???
>>140
ローカルでコンパイルしてアップロードしろってことでしょ
0144nobodyさん03/01/26 06:26ID:Hn+ukPj1
テキストファイルを読み込んでHTMLを吐き出すcgiの場合、
テキストファイルの中身を一行づつHTMLに吐き出すのと、
テキストファイルの中身を一旦配列変数に入れてから
まとめてHTMLにして吐き出すのとではどちらがいいんでしょう。
0145nobodyさん03/01/26 06:46ID:hfzgm8Bu
★http://jbbs.shitaraba.com/travel/832/★
    ◆みんなの情報局◆
0146nobodyさん03/01/26 09:25ID:???
>144
ケースバイケース。
0147nobodyさん03/01/26 09:29ID:???
>>144
「どちらがいいか」って漠然と言われても……
使うメモリが少なくてすむ前者のほうがいいんでない?
0148w-inds慶太03/01/26 09:58ID:8J93RXm8
>>144
w-indsの慶太どぇす。
147のいうように、前者のほうがメモリへの負担が少ないでしょう。
ただ、後者のほうがメンテナンスしやすそう。
0149nobodyさん03/01/26 10:02ID:???
while (read(IN, my $buf, 8192)) {
 print $buf;
}
0150nobodyさん03/01/26 10:38ID:???
print while (<IN>); # 1行ずつ

@hoge = <IN>; # 配列経由
print @hoge;

コード自体は大差なし
読み込みから表示までの間にどんな処理をするかで使い分けれ
0151nobodyさん03/01/26 15:45ID:???
シーケンシャルな処理なら前者
ランダムアクセスな処理なら後者
■ このスレッドは過去ログ倉庫に格納されています