トップページ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あたりに
0032nobodyさん04/10/22 19:02:41ID:???
>>31
確かに $ENV{'HTTP_FOO'} で取れました。感謝。ちなみに確認したのは
apache1.3.26 です。
ちなみに httpd によるってことは規格で決められてる訳ではないってことな
んですかね。
0033nobodyさん04/10/22 19:48:16ID:???
昔読んだ CGI/1.1 の draft では
CGIから任意のHTTPリクエストヘッダを参照できることが
SHOULD だとは書いてあったが MUST だとは書いてなかった
0034nobodyさん04/10/22 20:12:53ID:???
>>33
なるほど。自分でも探して目を通してみます。どうもでした。
0035nobodyさん04/10/23 22:15:54ID:47iuJ56s
http://ch2.ath.cx/load/
http://www.2chan.net/ping/ping.cgi
http://users72.psychedance.com/
↑こんなスクリプト探しているのですが、どこかにないでしょうか?
0036nobodyさん04/10/23 22:25:03ID:???
>>35
【CGI】こんなCGI探してますver.15
http://pc5.2ch.net/test/read.cgi/hp/1097762828/
0037nobodyさん04/10/24 18:45:33ID:L7tiXTDD
Referer等をみて意図しない場所からのアクセスの場合は
404 Not Foundのレスポンスを返したいんですが
(そのようなURLは存在しませんという意味で)、
CGIでそのようなことは可能でしょうか?
0038nobodyさん04/10/24 18:53:30ID:???
テンプレの参考リンクにこのページが無いのは問題ありだな。
http://cgi-spec.golux.com/draft-coar-cgi-v11-03-clean.html

>>37
http://cgi-spec.golux.com/draft-coar-cgi-v11-03-clean.html#7.2.1.3
00393704/10/25 19:47:48ID:???
結局>>38のリンク先はよく分からなかったけど、
調べたところでは200 OK以外のステータスコードは
CGIレベルでは出せないみたいですね。
Apacheだとスクリプトのファイル名の頭に「nph-」を付ける事で
ステータスコードの制御までできるようになるとか。
0040nobodyさん04/10/25 20:53:01ID:???
           ムシャ         |
             ムシャ       |
      ∩___∩              |  ぷらぷら
      | ノ      ヽ        ((   |
     /  ●   ● |         J  ))
. ((  |    ( _●_)  ミ ・
    彡、   |∪}=) ,ノ ∴
     /    ヽ/^ヽ ヽ  。
     |      ヽ \ |
     |      ヽ__ノ
0041nobodyさん04/11/01 21:50:36ID:E90YujQD
xreaでsendmailを使いたいのですがうまくいきません
FAQ等をみたら
「qmailで代替処理しているため、若干の違いがあります」
とありましたが、どこを直せばいいのかわからないのです

修正が必要と思われる部分のソース
open(MAIL,"| $sendc -t") || &error("メール送信に失敗しました");
print MAIL "To: $FORM{'email'}\n";
print MAIL "From: $mail\n";
print MAIL "Subject: $hp_title $reg完了\n";
print MAIL "MIME-Version: 1.0\n";
print MAIL "Content-type: text/plain; charset=ISO-2022-JP\n";
print MAIL "Content-Transfer-Encoding: 7bit\n";
print MAIL "\n\n";
print MAIL "--------------------------------------------------------\n";
print MAIL "$mail_main\n";
print MAIL "--------------------------------------------------------\n";
close(MAIL);

エラー吐かないけど、メールも送られない
何もおこらない感じです
それでためしに1行目の$sendcを$SENDMAILにしてみたら
「メール送信に失敗しました」と出ました。
よろしくお願いします
0042ko-04/11/01 23:12:44ID:zCtmeAN8
au
0043nobodyさん04/11/02 01:54:04ID:Fzb3fXaz
HTML内にイメージタグのソースでCGIを指定することで、
アクセス解析を第三者に提供できるようにしたいと考えてます。
その際にcookieも発行したいのですが、
cookie発行処理をCGIに書いてもうまく処理してくれません。
cookieの設定はHTML出力前のヘッダー部で行う必要があることは
理解しています。
例えば、 http://www.uwg.co.jp/なども
URL直打ちでもcookieが発行されているのですが、
彼らはどのように実現していると考えられますか?
分かる方教えていただけますでしょうか。

0044nobodyさん04/11/02 06:46:02ID:???
「上手く処理してくれません」みたいな質問者は死ねってことになってますよ。
00454304/11/02 12:54:02ID:Fzb3fXaz
>>44 すいません。
cookie発行処理をCGIに書いてもうまく処理してくれません。
⇒cookie発行処理をCGIに書いてもcookieが発行されません
ということでした。

もちろん、CGIをイメージタグではなくて、
URLを直接叩けばcookieは発行されます。

イメージタグソースでCGIを指定して、cookieを発行するには
どのようにしたら良いのでしょうか。
0046nobodyさん04/11/02 13:28:44ID:???
変わってないやないか!びっくりするわw
0047nobodyさん04/11/02 13:34:36ID:???
>>46 京都だな
0048nobodyさん04/11/02 13:37:51ID:???
>>45
何の工夫もなくヘッダフィールドに書くだけ
まともな回答が欲しいなら必要な情報を書いたほうがいいよ
0049nobodyさん04/11/02 14:17:32ID:???
>>41
$sendc の値はなによ?
xrea 使ってないから知らないけど path が違うとかじゃね?
0050nobodyさん04/11/02 17:21:32ID:eyBauyIT
2apesの日記を作りたいのですが。
作り方もしくは作り方を書いたサイトがあったら教えてください。
0051nobodyさん04/11/02 17:34:47ID:???
ape

━━ n. 類人猿, (一般に)猿; 猿まねをする者; がさつな(大)男.
go ape 〔俗〕 気が狂う; 夢中になる.
play the ape 人まねをする.
━━ vt. まねる.
0052nobodyさん04/11/03 08:07:40ID:cqDIpyU2
おしえてください
バックグラウンドで動いているプログラムに
htmlからパラメーターを与えたいです。その場合 GET/ PUT/だと
ブラウザー自体がレスポンスを期待して画面を切り替えようとします
127.0.0.1/JoinCheck のようにしてもブラウザーの画面に
影響しないようにしたいですが できますか?
よろしくおねがいします
0053nobodyさん04/11/03 09:18:27ID:???
>>52
http://dhw3.plala.jp/LAMP/PHP/reference/rfc/html/sec10.html#sec10.2.5
0054nobodyさん04/11/03 11:03:55ID:OzObA30X
CGIゲームなどのデータってダウンロードできるのですか?
データって言うか、設定とかそういうのを見てみたいのですが…。
0055nobodyさん04/11/03 11:06:20ID:???
>>54
バカが来るとこじゃないよ。お家にお帰り。
0056nobodyさん04/11/03 13:15:10ID:HNUT+8d6
>>54
馬鹿なんでわからないんですけど、ここおいときますね
現在7ヶ所攻撃中

【復讐】アルカイダHPを攻撃するスレPart1【チキショー】
http://news13.2ch.net/test/read.cgi/news/1099428557/

2ちゃんねらーでテロリスト鯖落とすぞ!2
http://live14.2ch.net/test/read.cgi/liveplus/1099423243/l50
0057nobodyさん04/11/03 17:39:17ID:???
ブログのトラックバックだけが必要ないのですが、それをCGIで行うことは
出来るのでしょうか?よくあるCGIランキングを見て周っても
「可愛い系」の物ばかりで、まったく見当たりません。

最新記事が一番上に来るようにして、カレンダーが表示できればそれだけで十分です。
0058nobodyさん04/11/03 18:28:57ID:???
>>57
web制作板で質問してた人かな。
使いたいブログとやらを持参して、スクリプト改造依頼スレで依頼するのが良いかと。
http://pc5.2ch.net/test/read.cgi/php/1097334246/l50
00595804/11/03 18:29:41ID:???
ミスった。こっちね。
http://pc5.2ch.net/test/read.cgi/php/1092304968/l50
0060nobodyさん04/11/03 18:49:11ID:???
掲示板でええやん。
0061nobodyさん04/11/03 23:52:08ID:???
ブラウザからのリクエストでサーバで重い処理をさせている時に
進行状況をブラウザに表示させる方法はありますか?
0062nobodyさん04/11/04 11:56:52ID:???
方法はあるが、ここはCGIスレだ。
0063nobodyさん04/11/05 01:53:06ID:wN9H034H
ぷららの自作CGIの制限で、

>お客様ごとに同時に起動できるCGIの数は一つです。
>既に一つCGIが起動している場合、次に要求されたCGIは、
>はじめから起動しているCGIが終了した時点で、実行されます。
>一定時間待機したにも関わらず、はじめから起動しているプロセスが終了しない場合には、そのCGIを中断します。
>1CGIあたりのCPU割り当て時間を制限いたしました。
>一定時間を超えてCGIがCPUを使った場合、そのCGIを中断いたします。

とあるんだが、よくわかりません。
今はお絵描き掲示板1つだけ設置してあるのですが、さらにカウンターを設置したとしても問題ないですか?
0064nobodyさん04/11/05 03:45:56ID:???
>>63
> 一定時間を超えて〜中断
お絵描き掲示板1つだけでも危険な場合があるということ。
00655204/11/05 06:34:11ID:???
>>53 ありがとうございます。理解いたしました
ヘッダーにより指示すればよかったんですね
0066nobodyさん04/11/05 07:44:18ID:???
>>64
お絵描きしてる時間はユーザ側のJavaアップレットでやってるだろうから大丈夫でしょ。
>>63
そんなにアクセス多くなければ問題ないよ
0067nobodyさん04/11/05 08:03:13ID:???
>>66
> 一定時間を超えて〜中断
カウンター1つだけでも危険な場合があるということ。
0068nobodyさん04/11/05 17:54:35ID:???
>>64,66,67
お絵描きの場合は多分>66の仰る通りだと思うんですが、
実際CGIが起動してるのってどういう時なんでしょう?
カウンターってカウントされる瞬間と、表示されてる間もずっと動作中ってことですか?
0069nobodyさん04/11/05 18:11:58ID:???
>>68
ものによるだろうけど普通は表示(出力)したら終わり。
0070nobodyさん04/11/05 18:19:24ID:???
>>69
なるほど。したら、掲示板とカウンタを同時に表示するようなことがなければ
表示されないとかはないですか?
0071nobodyさん04/11/05 18:39:40ID:???
>>70
> 掲示板とカウンタを同時に表示するようなことがなければ
なければ、ね。念のために言っとくけど掲示板とカウンタを別ページにすりゃ
いいってもんじゃないよ。Aが掲示板を見ると同時にBがカウンタのあるページ
にアクセスすりゃ同時に動くんだから。

ま、同時にキックされたところで2つめが待たされるだけなんでしょ? 信頼性
が求められるサイトならともかくそう気にすることもないと思うけど。
00726304/11/05 21:05:03ID:???
そうか。試してみます。どうもありがとん。
0073nobodyさん04/11/07 01:53:27ID:CA45uIVZ
リンクcgi探してます
tbookmark.cgiが良さげで使おうとしたけど
今借りてるレンタル鯖で動かなかった

かっこ良くてカテゴリ別にわかれる
おすすめのcgiってありますか?
0074nobodyさん04/11/07 04:38:36ID:???
>>73
板違い

【CGI】こんなCGI探してますver.15
http://pc5.2ch.net/test/read.cgi/hp/1097762828/
0075nobodyさん04/11/07 04:48:48ID:UnTFnKCo
質問です。

掲示板やアクセスログやカウンター、すべてのCGIの時間が狂ってるんですが(半日前の日付と時間になります)
これはCGIに問題あるんでしょうか、それともサーバー側でしょうか?
0076nobodyさん04/11/07 04:57:07ID:???
>>75
半日前つーのは珍しいね。
標準時がUTCの鯖でJST扱いをすると JST = UTC+9時間 つー式から9時間の差がでることはあるけども。
12時間つーと NZTあたりか。
00777504/11/07 05:26:12ID:???
>>76
半日前というか、詳しく言うと15時間ほど前の日付なんですよね。
昨日の昼か夕方あたりから時間が来るってルかも・・・その前の日は通常の時間だったのに。
0078nobodyさん04/11/07 06:10:00ID:???
15時間なら、24-15=9だな。
0079nobodyさん04/11/07 13:12:22ID:???
サーバのタイムゾーンを確認しれ
0080nobodyさん04/11/07 15:23:25ID:???
どうでもいい話なんだが、
半年ぶりにPerlでプログラミングする。
ほとんど、頭が真っ白になってやりにくい。
0081nobodyさん04/11/07 17:17:15ID:???
>>80
Larryが言ってたな。
Perlは毎日30分やる人に都合のいい言語なんだって。
時々する人には不向きな言語だそうだ。
リャマ本に書いてあったな、たしか。
0082nobodyさん04/11/07 18:35:51ID:V/bBugXz
トリップについての質問なんですが。
ここのサイトに
http://raccy.xrea.jp/ruby/trip.html

>キーに二バイト文字が使われているときは
>トリップ生成においては1バイトの二つの文字として扱われます

ってあるんですけど、これはたとえば”あ”のときは
どういうキーに変換されてトリップを生成するのでしょうか?

ちなみに’あ’はurlで送信するときは'%A4%A2'に変換されます
0083 ◆vz9kOnOvyU 04/11/07 18:52:52ID:???
>>82
print crypt("\x82\xA0",".H");

.Hp3zNBOPkseQ
00848304/11/07 18:54:29ID:???
>83のは無視してOK。

俺かっこわる...
008583 ◆3zNBOPkseQ 04/11/07 18:59:53ID:???
やっぱりあってんじゃん。
「#あ→#あ」と書いたら全角の#が有効になってたみたい。
このトリップのキーは#あ
00868204/11/07 20:49:59ID:V/bBugXz
どうもありがとうございます。
ちょっといろいろ考えてきます。
0087nobodyさん04/11/07 21:43:58ID:fwt0bX2Z
どなたか知恵を貸して下さい…。

SuExec導入済み鯖でアカウントを取って、cgiをうpしました。
でも、500エラーが出ます。

うpしたファイルとパーミッションは以下の通り。
(cgiはKENT WEBのponny chat。htmlの部分だけいじってます)
ponny.cgi / 701
ponny.log / 600
jcode.pl / 600
index.html /

ponny.cgiをPerlCheckerにかけたところ、
syntax error at ponny.cgi line 26, near "require "
ponny.cgi had compilation errors.
というエラーメッセージが出ます。これを見る限りでは
26行目がおかしいんだと思われるので、何もいじってない
ファイルから同じ部分をコピペして再度チェックしましたが、
やはり同じエラーメッセージです。

別アカウントでも同じものを使っていて、こっちは何の問題もなく
使えてるのにどうしてだ…。

ponny.cgiと全く同じ内容のtxtファイルもうpしたので、
ttp://karen.saiin.net/~kenchat/ponny.txt
何がどう違うのか、どなたか教えて下さい。
0088nobodyさん04/11/07 21:47:04ID:???
$quick = 1
セミコロンは?
0089nobodyさん04/11/07 21:49:11ID:???
>>87
25行目がおかしい。つーか気づけ。
>>87の内容から察するに、元ファイルもその部分がおかしいかも知れん
00908704/11/07 22:11:29ID:???
>88-89
26行目じゃなくて25行目だったのか…_| ̄|○
25行目にセミコロン入れただけでOKでした。

素早い回答、ありがとうございました。
0091nobodyさん04/11/07 23:28:26ID:???
ま、near だからね
0092nobodyさん04/11/13 00:39:13ID:gMI3pB8y
モジュールと関数とライブラリって、それぞれ、どう違うのでしょうか?
0093nobodyさん04/11/13 01:06:00ID:???
モジュール : ミッションの内容に応じて付け替えたり取り付ける場所を変更可能。
関数 :ある変数に依存して決まる値あるいは第二の変数のこと。函数とも表記する。
ライブラリ : 図書館。最古のものとしてアレクサンドリア図書館が有名。
0094nobodyさん04/11/13 01:59:00ID:???
>>93
ありがとうございました。
大事なのは、モジュールと関数だけで、ライブラリとか言ってる奴は
知ったかということですね
0095nobodyさん04/11/13 07:54:03ID:???
ポカーン
0096nobodyさん04/11/14 11:29:30ID:Q1/hzomt
データを<>とか,で区切っている人は多いですが、
タブで区切るのは邪道なんでしょうか?
0097nobodyさん04/11/14 11:39:31ID:???
別に普通。
0098nobodyさん04/11/14 12:08:02ID:Q1/hzomt
>>97
      //        _,.、-─''''''''''''''''''''''ー-、_   \
    //     _,..、-''"  _,,.-─       ~"''-、 ヽ
   / /     /    ,.r'"         i  ヽ  ヽ ',
.  / /    /     /      /   il ヾ  ヽ  \
  l:::/   ../    /    //  /  /|  iヾ  ヽ ヽヽ
.  |:::l  ....::/ /    /    // ///  / |  | ヾ   ヽ ', ヽ
  |:::!::::::::::::/ l   _,、r'フ彡フ~フ// /  / -|─|-i、 }  |  | !
  |::|::::::::::::! |   /l|" // / ///   リ リ  |i |、 |  | |  お兄ちゃん大好き♪
.  | !:::::::::::| |   l !,.-''ニニ-、 // ノ   ,ニニ=、リ l  |  | |
  ll:::::::::::::|/ |   | / /,.(⌒)、ヽ"~      /(⌒) `l |  j| | /
   ';:::::::::::|  ',  |   l ! `"| |        l i`ーイ|  | /|| ル
.   ';:::::::|r-i |!  |   l ○__ノノ        { ○;ノ.!  / / |i|
.    ヽ、|{ (| |ヽ ヽ 、`ー-"         ヽ--´ / /| / ||  
.     | ヽ、| | |ヽ\  ̄"~       '   ~ ̄"彡イ l{ ||  
     |  i | | ト,\\ iii    、___    iii ノ|  |', リ
.     |  l | | i li、 ゙ヽ、,,            ,.r' | |  |i ゞ   
.     | | i | l li  l, ヾ>''- ,, _     _ - ''  /| | i | l
0099nobodyさん04/11/14 17:11:22ID:???
, で区切れば Comma Separeted Values (CSV) と呼ばれる
タブで区切れば Tab Separated Values (TSV) と呼ばれる

<> で区切る場合の呼び方は知らん
0100nobodyさん04/11/14 18:33:45ID:???
>>94
マジレスすると、>>93は一般的な話

Perlでは

モジュール: Perlのライブラリで、use文でロードして使用する。
関数: サブルーチンと呼ばれるプログラムの断片。>>93の定義に加え、副作用を持つものも存在する。
ライブラリ: 主に複数の関数からなるプログラムの断片。大抵モジュールとして提供される。

ってな感じかな
詳しくはぐぐれ

01019804/11/14 19:57:51ID:???
>>99
CSV形式っていうのは知ってましたが
TSVっていうのは初めて知りました。
0102nobodyさん04/11/14 22:17:47ID:???
つーかお前ら、ここはCommon Gateway Interfaceのスレですよ。
0103nobodyさん04/11/15 02:21:11ID:???
ライブラリはもっと抽象的な言葉。
関数ライブラリもあればクラスライブラリもあるしー
0104nobodyさん04/11/15 02:31:29ID:???
PHPだと、以下みたいなものかな

モジュール-Apachの機能で追加するもの。
        そのサーバによって違う


関数-プログラム自身が持っているサブルーチン


ライブラリ-別途、インストールする必要があるサブルーチン
0105nobodyさん04/11/15 07:12:27ID:???
>>104
池沼死ねよ
0106nobodyさん04/11/15 07:16:30ID:???
>>105
お前が氏ねwww
0107nobodyさん04/11/15 07:22:07ID:???
本人は釣りのつもりだったんだろう。
最近よくある勘違いだな。
0108nobodyさん04/11/15 07:28:12ID:???
池沼なめるとぬっコロスぞ
0109いけぬま04/11/15 21:39:48ID:???
すいません。これでいいですか?
モジュール-Apachの機能で追加するもの。
        そのサーバによって違う


関数-PHP自身が持っている命令 echo、printなど


ライブラリ-別途、インストールする必要があるサブルーチン
       GDなど
0110nobodyさん04/11/15 21:42:52ID:???
(´・ω・`)ガッカリ
0111nobodyさん04/11/15 21:53:20ID:???
そんなにおかしくないと思うが・・・
0112nobodyさん04/11/16 19:43:15ID:???
かなりおかしいと思うが・・・
0113nobodyさん04/11/20 00:37:39ID:???
PHPは、スレ違いだとおもうが、>>109の何が間違ってるの?
0114nobodyさん04/11/20 00:57:26ID:???
IIS で動いてる Perl にはモジュールが存在しないワケ?
0115nobodyさん04/11/20 19:33:53ID:???
echoは関数じゃないし
0116nobodyさん04/11/20 19:39:20ID:???
ApacheのモジュールとPerlのモジュールをごっちゃにしてる時点でアウト
0117nobodyさん04/11/20 21:11:49ID:???
APerlche
0118nobodyさん04/11/20 21:24:35ID:???
関数は命令ごっちゃにするな
0119nobodyさん04/11/21 12:59:30ID:lC67s43+
ちょっと教えていただけると嬉しいのですが。。。

CGIの掲示板で、名前やコメントの中で改行を一切無効にするには、どうのように記述すれば良いでしょうか?
ちょっと追加するだけで、できるようでしたら嬉しいのですが。。。

理由:au携帯からの書込みで改行すると有効になり、荒らされてしまう・・・(^^;;

どなたか知恵を拝借いただければ嬉しいです!
よろしくお願い致します。。。。

0120nobodyさん04/11/21 13:03:04ID:???
>>119
置換すればぁ?バカ?
0121nobodyさん04/11/21 18:39:01ID:???
>>119
ちょっと追加すればできる。
でもスレ違い。ていうかCGIの配布元に聞け。
012211904/11/21 21:12:23ID:lC67s43+
バカですいません。。。(涙)

まったくわからないので、もしも簡単な追加でできるなら、
教えていただけるかと思ったもので。。。

0123nobodyさん04/11/21 21:17:02ID:???
一行追加でいけるよ。
ってか、CGIの質問しにきたんじゃないの?
改造してほしいの?
なら、スレ違い。
012411904/11/21 21:25:05ID:lC67s43+
一行追加でできるんですか!?
できれば教えていただけると助かります。。。

スレ違いでしたら、すいませんでした。
CGIのこの部分だけ知りたかったもので・・・
012511904/11/21 22:01:15ID:lC67s43+
調べて解決しました。
みなさん、ヒントをいただき、誠にありがとうございました。
0126nobodyさん04/11/21 22:08:30ID:???
>>120がヤバイ
0127nobodyさん04/11/21 22:10:17ID:???
>>126
ん?
0128nobodyさん04/11/22 00:31:27ID:???
Web制作板で一回聞いたんですが、こちらでも
もう一度質問させてください。

cgi で

http://example.com/test.cgi?a=aaa&b=bbb#abc

こういう書き方をしたとき、
a,b は環境変数 QUERY_STRING で取れるんですが、
#abc のところは何らかの環境変数か何かで
取得することはできるんでしょうか?
0129nobodyさん04/11/22 00:33:02ID:???
>>128
できません
013012804/11/22 01:02:22ID:???
どうもです。
ime.nu みたいなものを作ろうとしてたんですが、
たまたま別のスレを見てたら
#abc はブラウザが解釈するものだから無理だというカキコを
見つけたところでした。
0131nobodyさん04/11/22 01:34:34ID:???
>>130
RFC 2396によると # はfragmentとして扱われるためサーバ側に送られません。
というか、鯖側で捨てられても文句言えないことになります。
リンク元の方でなんとかするしか無いだろうねぇ。
■ このスレッドは過去ログ倉庫に格納されています