CGIだけど、なんか質問ある? Part 8
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
02/09/22 23:15ID:???※CGIは特定の言語に依存するものではありません。
※Perlのコーディングに関する質問は専用スレがありますのでそちらでお願いします。
↓
Perl 初心者コーナー Part16
http://pc.2ch.net/test/read.cgi/php/1032070299/l50
過去ログ・関連スレッドは >>2
0232nobodyさん
02/10/11 05:02ID:???英語が読めないの?
windowsだかDOSだかMacの改行コードをunixの改行コードに
変えなされ。
一行目の#!/usr/bin/perlみたいなのは残しておいても
まったく関係なし。
0233nobodyさん
02/10/11 05:03ID:???>ssiを使いincludeで外部ファイルを読み込んで
まず、ssiとは書かずSSIと書きます。
>includeで外部ファイルを読み込んで
「Cを使っていますが、includeで外部のヘッダーファイルを読み込んで」
なら分かりますが・・・
>perlのopen関数でやろうとしたのですが
>うまく外部ファイルを読み込んでくれません。
さきほどは、ssiでincludeで読み込んだのではありませんか?
perlにCを組み込んだのですか?
>タグとかがあるとダメなんでしょうか?
どんなタグですか。htmlファイルのタグは、まったく関係ないです。
0234あ
02/10/11 06:11ID:PQAg8rHhファイルやフォルダを右クリックしたら、
「属性変更」とか「アクセス権変更」とかあるはずらしいのですが、
ありませんでした。
0236nobodyさん
02/10/11 07:55ID:???自分で調べない人って最近多いの?
0237nobodyさん
02/10/11 08:01ID:horUUgUpSet-Cookie: YY_CHAT=やました<><><>0<>10; expires=Mon, 09-Dec-2002 22:56:49 GMT
↑がそのまま画面の方に表示されてクッキー保存されないんですよね。
どういったことが原因だか教えてくれる人はいませんでしょうか?
0239nobodyさん
02/10/11 08:18ID:horUUgUp返信ありがとうございます。
# クッキーを発行
&set_cookie;
print <<"EOM";
<html>
<head>
このように書き出しているのですが
ヘッダ終了の空行の出力とは
print "Content-type: text/html\n\n";
のことですか?
0240nobodyさん
02/10/11 08:34ID:horUUgUpprint "Content-type: text/html\n\n";
が問題だったようです。解決できました。
NPHスクリプトでやってるのですがそれは関係ないのですかね?
binmode(STDOUT);
print "HTTP/1.1 200 OK\r\n";
print "Connection: close\r\n";
を付けるのを忘れていて付けたら解決したので…
ありがとうございました。
0242nobodyさん
02/10/11 10:57ID:???何%ダウンロードしました というメッセージがリアルタイムで表示されますよね。
あれの仕組みはちょっと知らないんですが、それと同じようなことをCGIでやる事可能ですか?
なんかJAVAとかじゃないと出来ないんでしょうか。
0243nobodyさん
02/10/11 13:56ID:YuplvdMT携帯サイトで透過GIFを使ってアクセスログを取りたいのですが、CGI側に
print "Content-type:image/gif\n\n";
print `/cgi-bin/ 透過GIF`;←透過GIFのディレクトリ
と書いてもhtml側には□に×と出てしまいます。
透過GIF自体は携帯は対応してるようなんですが・・・どうやれば消せるのでしょうか?
教えてください。
0244nobodyさん
02/10/11 14:02ID:???・・・
0245nobodyさん
02/10/11 14:07ID:YuplvdMT検索で調べた際に
print `/bin/cat log.gif`;とあったのですが(こちらも試した)、これは
透過GIFの置いてある場所しょうか?よく分からなかったので>>243
のように書いてみたんですが。
0246nobodyさん
02/10/11 14:07ID:d3mMTY3q出ないときもあります。ひどいときは真っ白なページが表示されるだけ。
でも再読込をするとキチンと表示されます。
どこが原因なのかわかる方いたら教えてください。
HTTP/1.1 200 OK
Date: Fri, 11 Oct 2002 04:57:40 GMT
Server: Apache/1.3.26 (Unix) PHP/4.2.2
Keep-Alive: timeout=5, max=99
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html
0247nobodyさん
02/10/11 14:11ID:d3mMTY3q掲示板のCGIを書き換えてテストしたら……
すいません。作ってません。作れません。
0248nobodyさん
02/10/11 14:17ID:???芸能コーナーを作ろうと思い
cgi内に$page[13] = "芸能?";
と記入したのですが
芸能の『能』の字が表示されないのですが
jcodeに対応していないのでしょうか?
また、表示する方法があればご教授ねがいたいのですが。
0249nobodyさん
02/10/11 14:20ID:???0250nobodyさん
02/10/11 15:10ID:???0251nobodyさん
02/10/11 15:20ID:???そういえば<FORM ACTION="/sbin/sendmail">とやってもメールが送信されないんですけど。と言った人がいたなぁ。
0252CGI初心者
02/10/11 15:23ID:oWAZZFQ5一度画像を保存してまたとりにいくのではなく、そのまま送りたいのですが。
0254nobodyさん
02/10/11 15:34ID:4FavTUhmバイナリファイルアップロード用のCGIスクリプトを作ろうと思うのですが、
そのものずばりの勉強ページを教えてください。
できれば既存のCGIと連携させたいので、Perlで書きたいです。
よろしくお願いします。
0255nobodyさん
02/10/11 15:37ID:???0256nobodyさん
02/10/11 15:37ID:???すみません、数分で自己解決しました。
0257nobodyさん
02/10/11 15:37ID:???0258243
02/10/11 15:39ID:Q6IVHh/3+iモード 透過GIF アクセスログでググっても分からなかったもので
そもそも何でcgiを読みこむのに透過GIFで隠せるのか
カウンタに見せかけてアクセスログ取るのもあるようなんですが、
使ってないのでちょっと分かりません。
0259CGI初心者
02/10/11 15:39ID:oWAZZFQ5説明不足ですみません。
二行目は、一度保存すれば、携帯から取りにいくのは簡単ですよね。
でもそれだとタイムログが発生しやすいので。
あと、ちなみにこれはi-modeではなくiappliなのでブラウザ上で画像をだすのではないのです。
あくまで、CGIないで画像の処理を終わらせたいのです。
0260nobodyさん
02/10/11 15:41ID:???そのとおりでした。タグを含めて検索したらみつかりました。
>>257
すみません。調べてみたところ、fileにはvalueが使えないそうです。
正解:
<input type=file>
<input type=submit value="合法ファイルをアップロードする">
0262たく
02/10/12 02:34ID:daDz8sWD書き込むというのは・・.cgiのファイル自体を書き換えることができる
ということでよいのですか?
0263nobodyさん
02/10/12 02:40ID:???0264たく
02/10/12 03:42ID:daDz8sWDということであれば
第三者が書き込むことができると設定した場合は、
どうやってCGIのファイルを書き換えるのですか?
普通CGIのファイルはFTPでアップしないといけないと思うのですが
それ以外でどうやれば第三者が書き換えることができるのですか?
第三者はパスワードを知らない。
0265s
02/10/12 05:40ID:Qw5zsVmS0266nobodyさん
02/10/12 10:11ID:kb4PH9h0再起動したー
でも、
CGIがうごかねーーーーーーーーーーーーーーーーー!!!
777なのにパーミッションエラーとかぬかすなーーーーーーー!!!
誰か助けろ!!!タスsヶろ?
0267nobodyさん
02/10/12 10:15ID:???0268nobodyさん
02/10/12 12:10ID:???"POST" ではなくて "post" とか "Post"
が入ることはあるのでしょうか?
0269nobodyさん
02/10/12 12:16ID:???大文字しか在り得ない。
小文字でやると、
HTTP/1.1 501 Method Not Implemented
が鯖から帰ってくる。
0273
02/10/12 14:30ID:snVYyJdd自宅サーバなんだけど、投稿が出来ないみたいなんですが・・・。
0275nobodyさん
02/10/12 14:54ID:3wVM2eMFTripodがCGIに対応したみたいなので、
アップローダー付きの掲示板のCGIを設置しようとしたのですが、
パーミッションの設定が分かりません。
FFFTPでの属性変更にて設定しても変わらないのですが、
どなたか正しい設定方法教えて頂けないでしょうか?
ご指導よろしくお願いします。
0277x
02/10/12 15:12ID:MW5nQSMRhttp://www.dream-express-web.com/space-trust.htm
0278nobodyさん
02/10/12 15:30ID:nFHoIcesまず調べろよ。
ちなみに和鳥は、パーミッションの設定はイラソ。
0279275
02/10/12 15:57ID:3wVM2eMF>>278
一応F&Q見たんですけど分からないんです…すいません。
同じCGIでもiswebでは設置できたんですが、TripodだとCGIを読み込んでくれないんですよ。
同じディレクトリ構造にしてもパーミッション設定できるiswebの方は読み込むのに
Tripodの方はパーミッション設定できないのでそのまま使おうとしたら読みこまない…
設定できれば問題なく使えると思ったんですが、他に原因ありそうでしょうか?
0281278
02/10/12 17:06ID:nFHoIcesずるぼんうpろだかなにか?
和鳥は制限を設けてるから、置けないCGIもある。
CGIにアクセスししてみて、白い画面で文句垂れてる画面の内容をコピペしてここに貼り付けてみそ。
0282nobodyさん
02/10/12 17:28ID:???でもがんがって機能つけるです。
別に質問じゃなくてグチ。
0283初心者
02/10/12 17:37ID:ATtF3a3h家の会社でWSを作りましが、分からないことがあるのです。
サイトにアクセスした人のアドレスがわかる筈だと
デザイナーの方に聞いたのですが、どうやってでしょうか?
FFFTPのlogって奴でしょうか?
どうか親切な方、具体的な方法をご教授ください。
0285nobodyさん
02/10/12 18:58ID:???厨房中の厨房さん、こんにちわ
WSを作るって言う?WSってワークステーションのこと?
ネットにつながってないWSもあるからね。
httpサーバを設置したって言いたいわけね。
はい、それであなたはそのサーバの管理者なわけね(大丈夫か?)。
はい、それでhomepageにアクセスしてきた人のアドレスが
知りたいってわけね。
httpdディレクトリにaccess.logってのができるから、それを
見れば、アクセスしてきた人のIPアドレスやアクセス時間、
どのファイルを見たか、が書き込まれてる。
0286nobodyさん
02/10/12 19:05ID:???家の会社?
WSを作る?
わけわかめちゃん
0287nobodyさん
02/10/12 19:20ID:???0288nobodyさん
02/10/12 19:49ID:???よって283は大リーグヲタ
0290nobodyさん
02/10/12 20:33ID:???パラメータを変えるにはどうすればいいの?
0293275
02/10/12 22:19ID:3wVM2eMF亀レスすいません。
Your script produced this error: imgsize.pl did not return a true value at ./imgboard.cgi line 1412.
こんな表示が出るんですが…使えないってことなんでしょうか?
0294nobodyさん
02/10/12 22:21ID:jE9qd2Kn一番最後に1;とかいてみて。
0295275
02/10/12 22:21ID:3wVM2eMFあと、cgiはimgboardってのを使ってます。
0296294
02/10/12 22:22ID:???じゃあミスっているわけないな。
0297275
02/10/12 22:29ID:3wVM2eMFやはりTripodの制限にひっかかってるのでしょうか…?
0298nobodyさん
02/10/13 00:32ID:???多分サーバーのほうで、アップローダ系は設置できないように
してあるんだと思います。
自分も以前、ずるぼんとかJoyfulNoteとか試したけどダメでした。
0299nobodyさん
02/10/13 01:43ID:???何%ダウンロードしました というメッセージがリアルタイムで表示されますよね。
あれの仕組みはちょっと知らないんですが、それと同じようなことをCGIでやる事可能ですか?
なんかJAVAとかじゃないと出来ないんでしょうか。
0302nobodyさん
02/10/13 18:49ID:???0303nobodyさん
02/10/13 23:02ID:sWhCrFb+知るにはどうしたらよいのでしょう?
普通にstatしてもだめっぽいんですが。
0305303
02/10/13 23:12ID:sWhCrFb+0307303
02/10/13 23:57ID:sWhCrFb+0310nobodyさん
02/10/14 00:58ID:???0311303
02/10/14 00:59ID:???相手がcgiだとContent-Length を返してくれないっぽいでつ!
まーそりゃそーかという気もしますが‥‥
なんとかしてcgi相手でもサイズの取得できませんかねー?
最悪、読み込んだ後にバイト数を確認できればいいか
という気分になってきてます。
↑でもこれも計算の仕方がわからなかったりして‥‥。
read ( R, $Html, ( -s "$SrcFileName" ) );
として読み込んだとき、$Htmlの大きさを知るには?
0312303
02/10/14 10:37ID:???( -s "$SrcFileName" ) は0だった。←なぜこれでreadが動くのか?
readの戻り値も0だった。
読み込みバイト数を確認する手段なし。
0313nobodyさん
02/10/14 12:32ID:iqUjhfG60314今日入門。
02/10/14 14:34ID:nFNyLUz3ttp://www.kent-web.com/bbs/joyful.html?
これを
ttp://tok2.com/
で借りた場所にアップしたいのですが
書いてあるとおりにやっても上手く出来ませんでした。
もう少し頑張ってみるつもりですが
初心者にやりがちな間違い等有ればおしえていただけませんでしょうか?
本当におねがいします。
0315nobodyさん
02/10/14 15:55ID:???何でアップしたんだ。FTPソフトの名前。
どううまく行かなかったんだ。サーバにファイルが転送されない?
「書いてあるとおり」なんて、聞いてる相手にいちいち調べさせんな。
0316今日入門。
02/10/14 16:14ID:nFNyLUz3申し訳有りません。
ソフトはマカーなのでFetchです。
全部あげる事はできたのですが
■■■ 500 Internal Server Error ■■■
が出てしまいます。パーミッションは
ttp://www.kent-web.com/bbs/joyful.html?
の通りに設定したのですが・・・
0317nobodyさん
02/10/14 16:27ID:???アップできたけどそのCGIが動いてないんじゃん。
500ってのはそういうこと。400エラーはファイルがない。
で、また、調べさせようとしてるな。やだよ。
パーミッションはOK,ディレクトリもOKってことね。
それなら、perlの置き場所が違ってる可能性高いね。
1行目の#!/usr/bin/perlとかってとこ、サーバの
perlの場所にあわせた?
合わせてたら、今度はスクリプト自体がエラー出さないか、
自分のPCで実行してみることだ。
0318今日入門。
02/10/14 16:44ID:nFNyLUz3あぁ〜。また調べさせるようなことを書いてしまいました。
スイマセン!!
えと、多分、パーミッションというのも設定しましたし、
ディレクトリもつくりました。
perlというのもトクトクというレンタルサーバーで
書いてあったものを使ったので大丈夫だと思います。
>自分のPCで実行してみることだ。
とありますが、コレを確認するのはどうすればいいのでしょうか?
ホントになにからなにまでスイマセン。
0319nobodyさん
02/10/14 17:15ID:/8eacoxJperlとapacheを自分のPCにインストールする。;
apacheのhttp.confを変更する(ここらへんは本見るかググル);
c:/apache/apache/htdocs/xxx.cgiにcgiを置く;
apacheを起動する。;
ブラウザにhttp://127.0.0.1/xxx.cgiと入力する。;
いろいろテストしてみる。;
これでOKかな?(自信ないけど・・・・);
本買うのが一番早いような気がするが・・;
0320nobodyさん
02/10/14 17:27ID:???嘆かわしいことです。
0321nobodyさん
02/10/14 17:51ID:???>>319さんが書いてくれた様にするのが一番いいけど、
マカーならアイコンダブルクリックでCGIファイルを(.plにしとく?)
実行するだけでいいよ。エラーが出なければ、大丈夫ってこと。
(大体ね。)
0322nobodyさん
02/10/14 23:33ID:???くせに、今回はずいぶんと優しいな
少なくともオレの方が腰は低かったぞ
まあ自己解決したからいいけど
0324nobodyさん
02/10/15 00:29ID:???丁寧に答えてたヤシですが、今日は、機嫌がよかったので、書きコが
進んじゃいました。この前は、「こんなCGI探してます」スレで、
javascript書いてあげちゃったりして、「優しいね」って言われました。
それで、約半月あそこで質問のある度にググッて要望に沿いそうなCGI
探してあげてました。もう、あのスレ見てません。このスレは、明日
あたりから見なくなると思います。ごめんなさい、さようなら。
0325nobodyさん
02/10/16 16:26ID:suS2LYMZApacheをnobody権限で動かしているけどWeb上からサーバーの
システム時間変更したり出来ないのかな?
皆さんどのような方法使ってますか?
僕がやってみた事は以下ですが、全部失敗しました。
・SSIで cmd="/bin/date -s 'hogehoge'" を投げてみた
・php のexecコマンドで date -s コマンド投げてみた
・上の2つを sudo インストールしてnobody 権限許可して
同じようにコマンド投げてみた
どれも失敗。皆さんどうやってるの?それとも日時をWebで変更する事
自体がタブーなの?
0326nobodyさん
02/10/16 16:52ID:???0327nobodyさん
02/10/16 17:02ID:???0328nobodyさん
02/10/16 17:15ID:suS2LYMZ>なんでWebからシステム時間の変更しないといけないの?
コマンドから出来るものはおおよそWeb上からやりたいと
思わないかい?
可能ならfdformatとか、e2fsckまでWeb上から操作したいと思うよ。
WebminとかHDEと同じになってくるだろうけど。
実際には客のニーズとしてWebしか触れないのでtelnetでコマンド打ち込む
なんて出来ないってのが当面の問題です。
>>327
User root
Group root
に設定したらApache起動できないよ。
しかも、Apache起動してたら2つめ起動なんて出来ないとおもったけど、
どうよ?
0329nobodyさん
02/10/16 17:18ID:???0330nobodyさん
02/10/16 17:19ID:???> しかも、Apache起動してたら2つめ起動なんて出来ないとおもったけど
出来る。
0331nobodyさん
02/10/16 17:27ID:suS2LYMZ言いたい事は解る。
でも、時間修正くらいでいちいち客先いってられるかヨ。
2個めのApache起動普通には出来ないよね?
apachectl start したら already running って叱られるけど。
■ このスレッドは過去ログ倉庫に格納されています