CGIだけど、なんか質問ある? Part 12
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
04/10/10 00:04:06ID:???※ 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あたりに
0403nobodyさん
05/02/09 17:40:48ID:???POST(投稿の意じゃなくGETと対のPOST)した後でそのページを再読み込みした場合は、
同じデータをPOSTしなきゃいけない、つー決まりがある。
ソースは忘れた。RFCだったか、WWW3Cの勧告だったか。
つーわけでデータを送る部分をGETに変えるか、
POST後にthank youページへリダイレクトさせる(GET扱いになる。)
0404nobodyさん
05/02/10 02:18:38ID:lBCfFeOdperlで簡単な認証のcgiを書こうと思っています。
パスワードを入力させて、それがcgiの中に記されている(生データで)
本パスワードと照らし合わせての認証を取ろうと思っています。
このような方法をとった場合、cgiのソースを読まれてしまったらおわりなのですが、
web上から.cgiファイルを参照した際に、ソースを読み取ってしまうようなソフトは
存在するのでしょうか?
何分初心者なものでこの辺のセキュリティが分かりません。
本当はPHPでssl認証をすればいいことなのでしょうが、その方法も分かりません。
みなさんどうかよろしくお願いします。
0405nobodyさん
05/02/10 05:16:52ID:FuWRzUOO新しいサイトでフォームを使いたいのですがうまくいきません。
書き込み用のform.html(仮名)とform_mail.cgiは古いサイトでは
フォームの送信後メールがちゃんと届いたのですが、
新しいサイトでは何故か機能しません。
cgiのパールへのパスとドメイン所属のメールアドレス、
form.html内のform_mail.cgiへのパスは正しく書き換えている
(つもり)のに。。。ディレクトリーも同じように設定してます。
フォーム送信にhtmlとcgiファイル以外でしなければいけない事、
必要なファイルってありますか?
ひとつ疑問に思ったのは古いサイトではcgiのパーミッションを入力して
再接続すると前回に入れた数字(755)が残るのに、
新しいサイトでは入力後に再接続してもその数字は残っていません。
あとフォームを機能させるためにhtaccessって必要ですか????
分かる人どうか宜しくお願いします!!
0407nobodyさん
05/02/10 08:58:41ID:FuWRzUOO先に書くの忘れましたが使用環境はMACですがサーバーへのアップロードだけWINを使用。
因にMacでFetchから新しいサーバー内でパーミッションを変えようとすると
'Server response
"SITE CHMOD 755 form_mail.cgi:
Command not understand
と言うエラーが出てしまうのですが何か設定が必要なのでしょうか。
Macからでも古いサーバーの方ではパーミッションは変えられます。
0408nobodyさん
05/02/10 10:40:32ID:???ソフトが存在するかわからんが生PASSをプログラムに書くよりかは
別ファイルにして外から読めない領域に置いとくとかした方がよいよ。
あと生PASSじゃなくてcrypt関数なり、ハッシュ関数使ったほうがよいよ。
やり方はcrypt関数調べればわかるんで調べてください。
あとついでにパーミッションとかも調べてください。
0410nobodyさん
05/02/10 20:55:15ID:lBCfFeOdありがとうございます。チャレンジしてみます。
0411nobodyさん
05/02/11 02:26:57ID:qRObFzbQ例えば掲示板のデータが
番号<>名前<>内容
という風に保存されているとしたら、
ウェブログのCGIのデータはどういう保存のされかたになっているんでしょうか?
日記の文、見た方のコメント複数 とか
0412nobodyさん
05/02/11 02:33:16ID:???掲示板のデータが 番号<>名前<>内容 のように保存されるとは限らないように、
そのウェブログを作った人によって様々です。
ソースが公開されているものを参考にしてみてはどうでしょうか?
0413nobodyさん
05/02/11 02:50:22ID:???今度ソース探してみますね。
ありがとうございました。
0414nobodyさん
05/02/11 05:53:02ID:jXGn4pBYエクセルなら
log(3)=0.477121255
なのに
CGIだと
log(3)=1.09861228866811
となるのは何故ですか。
0415nobodyさん
05/02/11 06:26:09ID:???my(10 ,3) =@_;
log(3)/log(10);
でできました。失礼しました。
0416nobodyさん
05/02/11 16:37:07ID:rb20wtvQcgi-binディレクトリ下でないとCGIが動かないニフティのホスティングで
サイトをやっているんですが。Perl5で標準的なモジュールは使えないそうです。
画像アップローダー機能のついたショッピングモールCGIを
設置するように言われたのですが、カートに入れるなどの動作はうまくいくんですが、
アップロードに失敗し、画像が一覧で表示されません(FTPでアップした画像は認識)
使いたいCGIはEasy Shop 1.20 e_shop.cgiです。
http://wb-i.kir.jp/wb-i/soft1.HTML#easy
ぷららでは問題なく動いたのですが、どうにもならず途方にくれています。
これって、要するに無理なんでしょうか><
解決策があるならそのヒントを、もしニフティで動く同様のCGIがあれば
教えて頂けると幸せです(シェアウェアでもいいですが、実はもう7個くらい
設定しては駄目を繰り返しております…。
0417nobodyさん
05/02/11 16:57:17ID:CPrSGSxU関数ヘルプが使えるということでヘルプファイルはもってきた
のですが、perl.defの中のhelpfileの参照先を変更しても
うまくいきません。
というのもデフォルトではD:\Projects\CopalPro\~となっている
のですが、そんなディレクトリはないですし、これをC:ファイルのある場所
として保存してもまたD:\Projects\CopalPro\~に直されてしまうのです。
解決方法ご存知の方教えて頂けませんでしょうか?
0418nobodyさん
05/02/11 17:08:32ID:???スクリプトの設置方法は作者に尋ねろ。
http://wb-i.kir.jp/wb-i/rule.htm
>>417
ソフトの使い方は作者に尋ねろ。
http://hpcgi1.nifty.com/kaityo/wforum.cgi
0419nobodyさん
05/02/11 21:33:24ID:CPrSGSxUさっそく聞いてみます
0420nobodyさん
05/02/11 23:32:28ID:qHOtFkXVエラーメッセージをだすことできますでしょうか?
0422nobodyさん
05/02/12 00:32:32ID:1QkVUcBg質問です。
サイト内を検索するのはどうするのですか?
例えば、不動産屋のページで、駅名や家賃をリストから選び、
その条件に見合った物件のリストが表示される感じです。
よろしくお願いします。
0423nobodyさん
05/02/12 01:22:48ID:???0424422
05/02/12 02:29:57ID:1QkVUcBgなんだかぜんぜん分からん。
0425nobodyさん
05/02/12 15:46:21ID:???0426422
05/02/12 18:48:56ID:1QkVUcBgサイト内検索は分かりました。
しかし、やりたいのは、
株の銘柄で使うスクリーニングみたいなやつなのです。
どなたか分かる人〜〜〜
0427nobodyさん
05/02/12 19:08:32ID:???希望する動作をするCGIを書けばいいだけの話だが、
何が分からなくて前に進めないんだ?
他人が作ったcgiを探してるなら、Web製作板に こんなCGI探してます つースレがある。
0428422
05/02/13 00:37:53ID:PRsy34KG聞いてみます!!!
0429nobodyさん
05/02/13 21:52:59ID:5MlVVm1Zこのページにアクセスすると、IPアドレスは表示されるのに、リモートホストが表示されません。
どうすれば表示されるようになるんでしょうか?
よろしくお願いします
#!/usr/bin/perl
print "Content-type: text/plain\n\n";
print $ENV{'REMOTE_HOST'};
print $ENV{'REMOTE_ADDR'};
exit;
0431nobodyさん
05/02/14 00:12:32ID:526lw/CdPHPでいうdisable_functions = っていうini設定項目にあたる部分です
コーディングじゃないのでこのスレにきました。よろしくお願いします。
0432
05/02/14 00:39:20ID:kHxj7WCu0434nobodyさん
05/02/14 11:24:52ID:KWznJ4FxURLで特定の値を渡してやると、その実行結果が返ってくるCGIがあります。
(例えば test.cgi?hoge=1 とやると、「Return:0」 などといった文字列が返ってくる)。
別のCGIからそのCGIを読込み、さらに実行結果を所得し、そしてその結果で処理を振り分ける
などといったことは可能なのでしょうか?
事情により、その結果を返すCGIは修正等ができないようなので困ってます。
宜しくお願いします。
0435nobodyさん
05/02/14 11:49:05ID:???0436nobodyさん
05/02/14 12:39:32ID:vG+o2+2icgi-binの中に入れたcgi(perlで作成)が
http://localhost/cgi-bin/xxx.cgiで動きません。(404エラー)
問題として考えられるのには何があるでしょうか?
環境:AN HTTPD / WINDOWS XP pro
index.htmlのパスはD:\www\public_html\index.html
cgiファイルのパスはD:\www\public_html\cgi-bin\xxx.cgi
0437あぼーん
NGNG0438434
05/02/14 13:11:10ID:???返答ありがとうございます。
まあ返ってくるというか、ただ単にprintで書き出しているだけのようなんですけど。
できればそのやり方をご指南いただけないでしょうか……。
0440nobodyさん
05/02/14 18:48:13ID:AhvRBMMfそれはJavaScriptで制御汁。ここは場違い
0444434
05/02/15 10:16:00ID:???ありがとうございます。
ご指摘どおり、CGIから読み込んだHTMLを変数に保存する方法でいけそうです。
なんとかやってみます。
0445nobodyさん
05/02/16 10:41:05ID:IiRgZD0vスカラー配列、@と@_の違いも教えて
0446nobodyさん
05/02/16 22:44:18ID:???0447nobodyさん
05/02/18 01:24:55ID:hjlyVV+kありがとうございます、がんばってみます
0448nobodyさん
05/02/18 20:48:43ID:+91KO+VJJAVAスクリプトで 〜まで何日
<SCRIPT LANGUAGE="JavaScript">
<!--
var now = new Date();
var xday = new Date(2004, 9-1, 15);
count = Math.ceil( (xday.getTime() - now.getTime()) / (24*60*60*1000) );
document.write("<FONT style='font-size : 16px; color : #666666'>");
document.write("次の誕生日まであと ");
document.write(count);
document.write("日 です</FONT>");
//-->
</SCRIPT>
こんな感じのを使いたいのですが携帯サイトなので
CGIでどうすればいいのかヒントください
0449nobodyさん
05/02/18 21:10:26ID:lDVMH4i90450nobodyさん
05/02/19 00:15:24ID:???その前におまいはCGIで何か作った経験はあるのか?
まったく何も分からないけど教えて!っていうのは無理があるぞ
あとスクリプト探しは板違いだからそのへんもよろしくな
0451nobodyさん
05/02/20 16:19:44ID:???メーリングリストのcgiで有名なもの。会員登録が各自自分で出来、大会も自分でできる
という管理の簡単なものはありませんか?
メーリングリスト開設ならこれだよ、みたいなのがあると思うのですが・・・。
0454nobodyさん
05/02/20 17:45:04ID:???【CGI】こんなCGI探してますver.16
http://pc5.2ch.net/test/read.cgi/hp/1106947416/l50
0455nobodyさん
05/02/20 20:26:16ID:HZUcGZqt0457nobodyさん
05/02/20 20:56:37ID:HZUcGZqt0458nobodyさん
05/02/21 09:59:25ID:LguVgwU/をカウントして表示するCGIを作りたいのですが、どうすればいいのでしょうか?
言語はperlです。
0459nobodyさん
05/02/21 11:24:03ID:???0460nobodyさん
05/02/21 19:04:51ID:ZMOe8+zrこのメルマガ発行CGIを使っているのですが、
ドコモの人から「届かない」と苦情連発されています。
自分はドコモは持っておらずvodafoneですが普通に届いてます。
これは、ドコモ独自のフィルターなどで
迷惑メール扱いされて破棄されていると考えればよいのでしょうか?
また、ドコモ利用者の個別設定などで回避できる問題なのでしょうか?
ちなみに登録者数は2800人程です。
0461nobodyさん
05/02/21 21:14:45ID:???ドコモのドメインをREJECT設定にしてるとか。。
そのCGIソース見てないからわからんけど
0462nobodyさん
05/02/22 00:42:27ID:???0463460
05/02/22 00:49:21ID:???やっぱりドコモの問題なんですね。
分割送信などで対応したいと思います。(でも面倒杉・・ドコモ無視したい)
0464nobodyさん
05/02/22 01:13:42ID:HhKS8w+IAUだけ上手くいきません
サイトURLはttp://www.@@@.com(@@@は例)なんですが
直接ttp://www.@@@.comだとUSER AGENTが認識されず
その他扱いとしてttp://www.@@@.com/pc.htmlに飛んでしまい。
ttp://@@@.comとするとUSER AGENTが認識され
ttp://www.@@@.com/AU/index.htmlに飛びます。
いちおうAU用に書いた部分は以下のとおりなんですが
elsif($ENV{'HTTP_USER_AGENT'} =~ /UP\.Browser/i){print "Location: $au\n\n";}
どこか間違っているのかわからなくて質問させてください
スレ違いでしたらすみません
0465nobodyさん
05/02/22 09:44:34ID:???【配布先URL】 http://www.interq.or.jp/blue/takariku/1floor/index.html
【設置サーバ】 xrea.com
【 質問内容 】 登録ボタンを押した後、画面が真っ白で何も表示されない。
説明書通りに設定してみました。でもサンプルのように「登録完了しました」の画面がでません。
perlのパスは"!/usr/local/bin/perl"sendmailのパスは "/usr/sbin/sendmail" としました。
xディレクトリとかも試してみましたが結果は同じでした。
あとcgiファイルの中のユーザーが書き換える部分は $sendmail = "/usr/sbin/sendmail"
のようにダブルクォーテーションでいいのでしょうか。デフォルトではシングルと混在なので。
アドバイスお願いします。
0466nobodyさん
05/03/06 14:03:22ID:efbK6Gij<!--#include virtual="/hoge.cgi" -->
とか書いていると、
実際ページを見てソースを表示させたときにこの部分だけ表示されないのですが、
これはそういうものなのでしょうか。
ソースを見たときに表示させる方法はあるのでしょうか。
0467nobodyさん
05/03/06 15:44:38ID:Gk00+ava0469nobodyさん
05/03/06 22:44:55ID:???cgiを置いてパーミッションを700にすると403エラー、
755にするとソースがそのまま出たりファイル保存になったりしてしまいます。
suEXEC導入までや、suEXECではないサーバーではきちんと動きました。
どうしたらいいいでしょうか…
0470nobodyさん
05/03/07 08:49:20ID:???あとディレクトリ、データファイルの権限は確認した?
0471nobodyさん
05/03/08 21:04:06ID:???0472nobodyさん
05/03/09 11:04:10ID:???出力でバイナリ出力もしくは数値出力したい場合どのように
構文かけばよろしいのでしょうか?
printで出力すると数値も文字列として出力されてしまってこまってます。
0474nobodyさん
05/03/09 15:34:15ID:???教えてけろ。
0475nobodyさん
2005/03/27(日) 00:43:12ID:???ttp://perl.misty.ne.jp/01.html
↑のページを参考にローカルでCGIを動かそうとしたのですが、
手順どおりにファイルなどを処理して、http://127.0.0.1/hello.cgiを見てみると、
単なるPerlのソースが表示されてしまいます。
Perlのインストールディレクトリが間違っているのかと思い、
ディレクトリ指定を色々変えてみましたが、ダメでした。
どなたか助言をお願いします。
0476nobodyさん
2005/03/27(日) 01:22:11ID:???著作権のトコになにか書かないと駄目?
それともそういうことはしちゃ駄目なのかな
0478nobodyさん
2005/03/27(日) 01:42:42ID:???0479nobodyさん
2005/03/27(日) 06:46:28ID:???配布元のサイトをまず確認して、何も書いてなかったら
著作権表示の横かどこか分かるところに、スクリプトをいじりました
ということを記載しておいたほうが良いと思う。
0481nobodyさん
2005/03/27(日) 10:08:15ID:???そのページの説明は鯖でcgiを使うのに必要な設定に必要な部分がごっそり抜けとる
ttp://httpd.apache.org/docs/howto/cgi.html
それぐらい自分で調べてついでに他のドキュメントも嫁つー親心かも知れん。
ttp://httpd.apache.org/docs/ 以下のドキュメントも読んどき
0482nobodyさん
2005/03/27(日) 13:42:05ID:???0484nobodyさん
2005/03/27(日) 18:35:30ID:sZmaiq6S//言語に依存しない質問ができるスレッドがないみたいなので
//こちらで質問させてください。
OSはLinux(どのLinuxかはちょっと今はわかりません)で、
WebサーバはApache1,?、言語はPHP4.?.?なのですが、
(といっても↓の質問だと言語は関係ないのかと思われ)
csvファイルの読み書きの際、
flockを★正しく★さえ使えば、
基本的にまず問題ないことは知っているのですが、
それでもなにかしらトラブルが起きる可能性はありますよね?
停電などで1行の途中までしか書きこみされてない、とか、
デッドロックになってしまうとか
(いや、ロックファイルを作るのでなく、
flockだけを使うならあり得ないのかな?
・・・他にも問題あるのかな・・・ありましたら教えてくださいm(_ _)m)
で、その場合、自動的に、
(つまり、人間が介入してFTPなりSSHでそのファイル編集しなおすことなく)
ほっとけば正常な状態(それまでのデータが消えてもいいです。追記さえできれば十分です)
に戻ることってできるのでしょうか?
というのも、このスクリプトはフォームの内容をメールし、同じ内容をcsvファイルで保存するものなので、
あくまでcsvは補助的なものでして。
できるのでしたら、その場合、
どうコーディングすればいいのでしょうか?
どなたかおわかりの方、教えていただければ幸いです。よろしくお願いいたします。
0485nobodyさん
2005/03/27(日) 23:12:41ID:???0486nobodyさん
2005/03/28(月) 23:19:47ID:78xiGlHk0488nobodyさん
皇紀2665/04/01(金) 08:25:19ID:bl+Kbpen0490nobodyさん
皇紀2665/04/01(金) 08:47:55ID:???動作させる鯖の文字コードや改行コードにcgiのそれらを合わせていれば、
バイナリ転送しても支障がでない。
0491nobodyさん
皇紀2665/04/01(金) 11:54:29ID:VW2dDgs/簡単に入れる方法ありますでしょうか?
よろしくお願いします。
0493nobodyさん
皇紀2665/04/01(金) 15:28:17ID:VW2dDgs/そのソースがほしいです。
今、フォームを持ってるのですが、それに
簡単に2〜3行付け加えてエラー検査したいのですが、
ソースが難しくてわからないのです。
0494nobodyさん
皇紀2665/04/01(金) 17:10:58ID:???jcode.plの設置ついてなのですが、CGIを多数設置した場合
それぞれ同じディレクトリにjcode.plがあって、容量を圧迫するので
一つ上のディレクトリにjcode.plを置き、各CGIから読み込ませても平気ですか?
それともやはり、一つ一つ同じディレクトリにjcode.plを置いた方がいいのでしょうか?
0495nobodyさん
皇紀2665/04/01(金) 17:15:39ID:9U/lzR650496nobodyさん
皇紀2665/04/02(土) 01:22:35ID:+F8g60+Uそれって名前が同じでもCGIによって中身が違う気がするんだ。
だから、1つ1つ置いた方がいいと想うよ。
0498nobodyさん
2005/04/02(土) 04:22:00ID:???「は?」だけで何が伝わるの?お前、もう「は?」しか言えなくなってんじゃないの?
そういうレスに何の抵抗も無いのか。それは悲しくないか。
0499nobodyさん
2005/04/02(土) 05:46:38ID:???jcodeの事知ってて>>496みたいな発言してるのか?なら勉強不足だな
>>494
jcodeの容量って21kbくらいだろ10個おいても210kbだしな、100個までなら置いていいんじゃまいか
0500nobodyさん
2005/04/02(土) 06:11:11ID:???1つにするメリット
・容量が減る
・jcode.pl自体のverUp時に1つ変更するだけで済む。
・OSのディスクキャッシュの効果があるかも知れない
1つにするデメリット
・各cgiが期待するjcode.plの挙動が微妙に異なるかも知れない
0501nobodyさん
2005/04/02(土) 06:39:59ID:???>>494が自作でjcodeを作れるとは思わない、せいぜいkentwebあたりからだろ
なら何個置こうが問題ない
0502494
2005/04/05(火) 06:40:00ID:???レス有難うございます。
jcoedはCGIをDLした時に付いてくるjcoedで、更新が一番新しいの使ってます。
確かに1つ21kb程度ですよね…
今のところ不具合は出てませんけど、これからは同じディレクトリに入れてみます。
■ このスレッドは過去ログ倉庫に格納されています