トップページphp
983コメント423KB

CGI設置について質問【Part3】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/04/10(火) 03:33:02ID:???
CGIを設置しようとしてうまくいかない場合の質問はこちらで。

自分でどのようなことまでやったか、エラー・動作がおかしい場合は
その内容を詳細に書くこと。

配布元、設置先で質問・解決できない場合は、ここで質問すれば
親切な人が教えてくれるかもしれません。

質問テンプレ(全項目記入)
   【       CGI名      】 複数のバージョンがある場合が多いので正確に
   【    配布元URL    .】 
   【    設置サーバ    】 レンタルスペース名または設置中のURL
   【スクリプトチェックの有無】 自分でチェックできないものは使わない
   【      質問内容     】 

※ エラーがでてるならエラーメッセージも書くように。
続きは>>2-5辺り。
0116nobodyさん2007/06/26(火) 16:11:54ID:???
>>115
怪しいと思ったら、何でそれを調べないの
試しに perl -c sub/battlelib.pl
ってやったらエラー出たよ
SJISでセーブしたのと、188行目に全角の空白が並んでるのが原因
あと改行をCRLFにすんのはトラブルの元
エディタ選びからやりなおせ
0117nobodyさん2007/06/26(火) 16:30:14ID:???
っと、文字コードと改行コードは環境によるんで(環境かいてないな)
とりあえず188行目の全角スペース消してやってみ
でもWindows以外だとこのままじゃ動かないと思うんだが・・・
0118nobodyさん2007/06/26(火) 18:24:02ID:QhpDtVIc
環境は、Windows 2000でエディターは「Terapad」を使ってます。
「SJIS」「CRLF」で全ファイルを編集していました。

上記に述べたエラー
「Premature end of script headers: simulator.cgi」
と管理画面にログインした時に出た同じ種類のエラー
「Premature end of script headers: admin_sikyu.cgi」
が出ていまして
「simulator.cgi」は戦闘関連のファイルなので、もしかしたら「sub/battlelib.pl」も原因の1つかと推測したわけですが…。

>>113」でおっしゃられていた事以外でも「全角の空白」「CRLF」も要因だったんですね。
全ファイルを見直して、余計な全角空白を削除し、「SJIS→EUC」と「CRLF→LF又はCR」で再編集してみます。
それでヘッダも解決ってわけにはいきません…かね。
0119nobodyさん2007/06/26(火) 18:32:01ID:QhpDtVIc
追伸、保存文字コードと保存改行コードは「自動」にしていました。
0120nobodyさん2007/07/05(木) 02:09:00ID:iKazkUYb
アクセス解析のCGIを設置しました。
ログファイルのパーミッションを666にしろと書いてあったので
そのとおりに設定して問題なく動作しています。

しかし、ブラウザ等でログファイルのURLを指定すると、ログファイルの中身が見れてしまいます。
これは正常なのでしょうか?
アクセス解析のCGI自体はパスワードで管理されていますが、
ログファイルが直接見れてしまっては意味がありませんよね?

なんとかならないでしょうか。
教えてください。

0121nobodyさん2007/07/05(木) 02:36:47ID:???
>>120
正常です。何とかしたいなら

・ログファイルの名前をわけのわからん文字列100文字くらいのファイル名にする(改造必要)
・httpdから見えない場所にログファイルを置く(可能な鯖限定)
・パーミッションを600にする(suexec対応の鯖限定)

のどれかを選択するしかありません。
0122nobodyさん2007/07/05(木) 02:39:06ID:???
ああ、あと

・htaccessでログファイルにアクセスできないように設定する(可能な鯖限定)

もありますね。貴方の鯖がわからんのでこれ以上は答えようがありませんが。
0123nobodyさん2007/07/05(木) 09:33:19ID:???
suEXEC等を使わない限り、CGIを実行するユーザーとブラウザで閲覧するユーザーは同じ
つまりそのまま置いたら見えるのは当たり前。
DocumentRootの中にある必要は無いから外に置くのが普通。
どーしても中におきたいなら、>>122>>121で。
中にある必要なんて無いけどな。
0124nobodyさん2007/07/09(月) 18:24:18ID:WCbJakAG
   【       CGI名      】 BBS(特に名称はありません)
   【    配布元URL    .】 今は404になっているページです
   【    設置サーバ    】 ドメインサーバー(レンタル)
   【      質問内容     】 
BBSのCGIですが、それをケータイからも読み書きできるようにしたく、別のphp形式のBBSスクリプト(ケータイバージョンの)を作りました。
CGIスクリプトの方は、「bbs.dat」というファイルに全てのデータ(日にち、時間、名前、書き込み、ホストなど)を保存し、
それに書き込むや読み込むことによって、掲示板が作動しています。

ケータイVer.のPHPファイルからも同じデータファイル「bbs.dat」を書き、読みできれば、
PC版掲示板とケータイ版掲示板で一つのデータファイルを共有して、PCからもケータイからも読み書きできると思ったのですが
実際upしてみたら、PHPファイルからの書き込みができませんでした。ようはケータイ版掲示板からは書き込むことができない状態です。
「bbs.dat」ファイルを644のままにしてたので、それで書き込むことができないのでしょうか?
この場合、666もしくは646に変えて大丈夫のでしょうか?
それと、アクセス権の「グループ」と「他人」の違いはなんでしょうか?
0125nobodyさん2007/07/10(火) 10:22:55ID:???
>>124
オーナーはわかるよな?
グループはCGIサーバの場合、同じサーバの別のユーザー、
他人はブラウザ経由でアクセスしてくるユーザーと思えばいい。

そして、通常ではphpは他人で、cgiはsuEXECならオーナー、
それ以外は他人の権限で実行される。
phpとcgiで違いが出てるなら、suEXECなのでは?
まあ他人の書き込みを許可しとけばいいよ。
suEXECだと、同じサーバの他のユーザーがcgi書けば
グループ許可したファイルに書き込めちゃうから、グループは許可なしで。
0126nobodyさん2007/07/10(火) 11:40:06ID:???
しかしモジュールのphpとcgiのsuEXECが混在してるのは変な環境ではあるな
まあ共用サーバじゃなけりゃいいけどね。
0127nobodyさん2007/07/10(火) 16:34:29ID:???
>>125
ありがとうございました。
646に変えて見たらデータファイルに保存できるようになりました。
0128nobodyさん2007/07/10(火) 21:55:28ID:???
すいません、>>124=>>127ですが。
ケータイ版BBSから書き込んだデータをデータファイルに保存できるようになったのですが、
PC版から新規書き込みをすると、データが上書きされちゃいます・・・
例えばケータイで書き込んだカキコがNo.500とNo.501だとすると、
PCからNo.502を新規書き込むと、500と501が消えて、データファイルの中にもNo.499、No.502という風に、
PC版からの書き込みしか残りません・・・(PCから新規書き込みしなければ、ちゃんと500と501は残ります)
どうすればこの現象を解決できるのでしょうか(´・ω・`)
0129nobodyさん2007/07/10(火) 22:51:41ID:???
自作スクリプトの不具合をソースも見ずに解決しろといわれてもな
0130nobodyさん2007/07/11(水) 02:13:58ID:???
管理番号を片方は使いもう片方は使ってないとかだろ・・・
0131nobodyさん2007/07/11(水) 11:38:57ID:???
管理番号ってなんですか?
0132nobodyさん2007/07/11(水) 13:48:51ID:???
自己解決しました。ありがとうございました。
0133nobodyさん2007/07/11(水) 14:10:37ID:???
132はなんの自己解決なの?w
0134やまとと2007/07/15(日) 15:52:39ID:6AEgZxo8
【       CGI名      】不明 どこを見ればいいんでしょうか?
【    設置サーバー     】WING2 無料版
【    配布元URL      】CGI&SSIを使うとホームページ作成にこんなに差が出る
                 メディアテック刊 / ドッシー秋山&キャメル桜田
                 http://p4room.mda.or.jp/book/cgi2/
【      質問内容     】
                  
CGI初心者です。CGIが許可されているはずの「WING2」でcgi-bin のファイルにCGIファイルを入れたのに全く動いてくれません。どうしたらいいでしょうか?どなたか教えてください。
URLはhttp://wing2.jp/~ittouennoseitotati/count.shtml
PLファイルはhttp://wing2.jp/~ittouennoseitotati/cgi-bin/countt.plです。よろしくお願いします。
0135nobodyさん2007/07/15(日) 16:39:07ID:???
>134
ここじゃなく、エスパーさんを探すといいですよ
0136nobodyさん2007/07/15(日) 17:07:50ID:???
たぶん#exec cmdが禁止されているんでしょう。
#exec cgiにしてレスポンスヘッダを吐かせれば動きそうな気もしますが
私はSSIは上級者向けだと思うので、とりあえず諦めて他のことするのがオススメです。
0137nobodyさん2007/07/15(日) 17:46:08ID:???
an error occurred while processing this directive
とエラーが出てるのでIncludesNoExecっぽいですね。
includeやflastmodは使えますがexecは全て使えない状態です。

最近はNoExecの分際で「SSI使えます」と言っていいんだ…
Options +Includes
と書いた.htaccessをこっそり設置すれば動きますよ。
0138nobodyさん2007/07/15(日) 21:04:14ID:OANM/fei
   【       CGI名      】 Any Answer?
   【    配布元URL    .】 ttp://www.area-s.com/main/anyanswer.html
   【    設置サーバ    】 ttp://yuzu.s4.aiosr.net/any/any.cgi
   【スクリプトチェックの有無】 無
   【      質問内容     】 
設置サーバーのパーミッションは755で、アクセスするファイルは666です。
昨日、KENK WEBの掲示板を設置するのは成功しました。

今日、「Any Answer?」をDLして設置してみたのですが、
新規登録から名前などを入力して決定ボタンを押すと「 File Write Error 」と出てしまいます。
サポートBBSの過去ログで似たような質問があり、その方は「File Open Error」と出たそうで、
それは解決していました。
そこに書かれていた解決法を試したのですが、直りませんでした。
新たにサポートBBSには書き込めなくなっているので質問できず困っています。

パーミッションを、 any.cgi=755  フォルダ&その他のファイル=666
と変え、set.cgiの中を

# ---------- FILE PATH
$cgi_url = 'any.cgi'; # any.cgiのパス 705(755,700)
$set_url = 'set.cgi'; # set.cgiのパス 606(666,600)
$bas_url = 'bas.cgi'; # bas.cgiのパス 606(666,600)
$dat_url = 'dat.cgi'; # dat.cgiのパス 606(666,600)

と変えたのですが直りません。

どうぞお教えください。よろしくお願いいたします。
01391382007/07/15(日) 22:13:57ID:OANM/fei
設置サーバー間違えました。
ttp://www.allinoneserver.net/
です。
01401382007/07/15(日) 22:40:30ID:???
解決しました。
0141nobodyさん2007/07/15(日) 22:41:36ID:???
>>134
自分でその countt.pl 踏んでみて何かおかしいと思わないか?
よくわかんなかったら countt.pl → countt.cgi に名前を変えて鯖指定の
実行属性のパーミッション(700とか755とかそんなの)にして
count.shtml の該当個所を書き換え。

>>138
お行儀の悪い子は来ちゃダメ。

WEBサイト制作初心者用質問スレ Part 185
http://pc11.2ch.net/test/read.cgi/hp/1183370466/440-444
0142やまとと2007/07/15(日) 23:29:30ID:6AEgZxo8
みなさん。早速の返信ありがとうございます。早速いくつかやってみますね。
01431382007/07/15(日) 23:38:39ID:???
>>141
失礼しました。
板違いだと言われたのでここに移動したのですが、
板違いじゃなかったそうで。
向こうで答えていただき解決しました。
0144やまとと2007/07/15(日) 23:49:12ID:6AEgZxo8
>137 nobdyさんへ
Options +Includes をこっそりとかいてありましたが、どのように設置すればいいんでしょうか?初心者なのでかなり初歩的な質問こも知れません。本当にすみません。ヒントか何かでもいいので教えてください。
おねがいします。
0145nobodyさん2007/07/16(月) 13:27:46ID:???
そこはジョークなので無視して下さい。
どーしても今すぐカウンタを付けたいのであればトップをindex.phpにするのは如何でしょう。
ttp://loglog.jp/~php/counter/
PHPなら気にするのはログファイルのパーミッションぐらいのもんです。
0146やまとと2007/07/16(月) 18:46:25ID:X6uLJYg5
>145
このように.phpにかえてみたのですが、カウンターの文字がきえました。.shtmlにかえた場合だと日にちを表す<!--#echo var="DATE_LOCAL" -->というタグは正常に表示されましたが
カウンターは表示されません。どうしたらいいでしょうか?鯖を変えるしかないんでしょうか?そのような場合どこを使うといいでしょうか?無料のほうがいいですけど、なにかおすすめはありますか?
今さっきから馬鹿な質問をすみません。
http://wing2.jp/~ittouennoseitotati/count.php
0147やまとと2007/07/16(月) 19:38:35ID:X6uLJYg5
>145さんへ
いじりまくって考えてコードから見直してCGIだけを使った構造にしたらなんとかうごいてくれました。
がしかし、これは、トップページには使えず「cgi-bin」のなかだけに入れている時しか動いてくれません。
これをhtmlで呼び出してトップページに表示するにはどうしたらよいでしょうか?wing2ではcgi-binの中でしか
CGIは使えないとかいてありました。タグの質問になってしまいますが、どうぞよろしくお願いします。
CGIがなんとか起動したURLです。http://wing2.jp/~ittouennoseitotati/cgi-bin/count.cgi
0148nobodyさん2007/07/17(火) 13:22:59ID:???
>>146
PHPで動きましたけど?
ttp://wing2.jp/~fss/

ここは画像カウンタを提供しているようですが、私も彼らが何を申されているのか意味が
分かりませんでした。(タグを貼るだけ!と言ってるんだけど肝心のタグが出てこない)
繰り返しになりますがSSIは超難しいのでなるべく使わない方が賢明です。
01491482007/07/17(火) 16:04:54ID:???
と言ってたら警告もなしにアカウントごと消されました。
卑屈な監視員がへばりついてるようなのでサーバ変えた方が良いでしょうね。
0150nobodyさん2007/07/18(水) 02:32:46ID:???
テンプレを使うような質問ではないのですが・・・

ケータイ用の掲示板を作ったのですが、
パスワードの欄を最初から半角入力に指定したい場合はどうソースを書けばいいのでしょうか?
0151nobodyさん2007/07/18(水) 11:37:21ID:???
>>150
input の istyle
0152nobodyさん2007/07/18(水) 23:03:31ID:???
istyleをどうすればいいんですか?
0153nobodyさん2007/07/18(水) 23:13:54ID:???
まずググれよ
0154nobodyさん2007/07/20(金) 04:44:12ID:zfeMTUw8
スクリプト minichat
配布元 ttp://www.13net.ne.jp/~katuta/free-cgi/sample/chat/
サーバ さくら
チェック 無

携帯、PC振り分けについてです。数年前のスクリプトなのですが、
以下の記述で正確に振り分けできているのでしょうか?
特にsoftbankにおいては何度も会社が変わっていますので。
変更が必要な場合、ご教授お願いします。

#環境変数
$addr = $ENV{'REMOTE_ADDR'};

#携帯かPCかを判別
$agent = $ENV{'HTTP_USER_AGENT'};
if($agent =~ /docomo/i){
$agent_check = '0';
$host = 'i';
}
elsif($agent =~ /j\-phone/i){
$agent_check = '1';
$host = 'J';
}
elsif($agent =~ /up\.browser/i){
$agent_check = '3';
$host = 'EZ';
}
else{
$agent_check = '2';
$host = $ENV{'REMOTE_HOST'} || $addr;
}
0155nobodyさん2007/07/20(金) 05:00:37ID:???
まずググれよ
0156nobodyさん2007/07/20(金) 08:57:52ID:???
>>154
できてない。あとスレ違い。
0157nobodyさん2007/07/20(金) 14:16:14ID:???
まずググれとかなんとか一言で書き捨ててるけど
だったらこのスレいらないじゃんって話
0158nobodyさん2007/07/20(金) 14:24:39ID:???
でも、ググったほうが早く解決するような質問なら、
質問者の今後のためにもググってもらったほうがいいと思う
0159nobodyさん2007/07/20(金) 14:48:15ID:???
携帯は板かスレ分けろよ
0160nobodyさん2007/07/20(金) 15:00:56ID:???
携帯の板にはプログラムやWebProg関連は無さそうだから
スレ作ったほうがいいかもね。
でもまずここに聞きに来るのは避けられないと思うよ。
0161nobodyさん2007/07/21(土) 00:26:19ID:???
こんにちは。CGIのパーミッション設定について教えて下さい。
レンタルサーバーにて、

public_htmlフォルダ (755)
  |
  L__ cgiフォルダ (755)
     |
     L__ savelog.cgi (755)
     |
     L_ log.dat (600)


の様に設定しました。
cgiは問題なく動くんですが、
これだと http://xxx/cgi/log.datでアクセスすると、log.datをダウンロードできてしまうんです。
どうしたら、直リンしてもファイルの内容を覗かれない様にできますか??
ご教授下さい。


0162nobodyさん2007/07/21(土) 00:50:36ID:???
log.dat のオーナーは?
0163nobodyさん2007/07/21(土) 00:57:05ID:???
オーナーが自分で600だと、cgiから読み書きできるのもsuEXECの時だけ
直リンでアクセスできてるってことは、オーナーが自分じゃないんだろう
この場合、httpd.confや.htaccessを触れないなら、public_htmlよりも上に置くしかない
0164nobodyさん2007/07/21(土) 12:52:40ID:???
>>161
write only にするんじゃ駄目なのか?
0165nobodyさん2007/07/21(土) 19:35:58ID:???
読めなきゃ意味無いだろうw
0166nobodyさん2007/07/21(土) 22:34:08ID:???
ファイル名からログなんだろうから、なんかあった時に (read 立てて)
読めればいいんじゃね?
0167nobodyさん2007/07/22(日) 09:33:37ID:???
質問者はどっかいっちゃったのかもしれんが
.htで始まるファイルはデフォルトではhttpd.confで読めなくしてるから
そういう名前にしてしまう手もあるな
0168nobodyさん2007/07/30(月) 12:26:42ID:duDltAck
パーミッションの「グループ」は具体的にどんな際に利用するんでしょうか?
0169nobodyさん2007/07/30(月) 23:00:27ID:???
ある「グループ」の人にだけ見せたいとか、書き込みを許可したいとか...
0170nobodyさん2007/07/31(火) 10:09:07ID:???
webやらcgiでグループを使うことは稀
むしろsuEXECのサーバで同じグループにはアクセスさせたくない時に使うことが多い
01711682007/07/31(火) 14:30:54ID:6LV11FlT
>>169
それは分かってたんですが、具体的にどういう事例で活用するのか思い浮かばなくて。

>>170
なるほど。
つまりウェブでCGIを利用する際は、大抵の場合「グループ」はパーミッション0で良いんですね。

でも、CGIを配布してるサイトの多くはパーミッションの設定を「グループ」と「その他ユーザー」
の両方同じものを指定している場合が多いと思うんですが、何か理由はあるんですかね。
実際は「705」で正常動作するのに、わざわざ「755」にする必要ってあるんでしょうか?

分かる方いらっしゃいましたら、お願いします。
0172nobodyさん2007/07/31(火) 14:51:15ID:???
755と言っとけばほとんどの環境で問題無いので、
説明が面倒だからか、本人もよくわかってないかどっちかだべ。
705と書くと、他では755と解説してるけどどう違うのか?なんて質問きそうだしw
01731682007/07/31(火) 15:32:32ID:???
>>172
CGIとは直接関係ないところに理由があったんですね。
確かに「Perlは使えるけどサーバの知識はありません」って場合も多そう。

ずっと引っかかってた疑問が解けました。
ありがとうございました。
0174nobodyさん2007/07/31(火) 23:23:00ID:???
705 なんて言う奴ってほんとにパーミッション理解してるのかなぁ...

700 でない理由を説明して欲しいものだ...
0175nobodyさん2007/08/01(水) 00:55:23ID:???
イタタタ
0176nobodyさん2007/08/01(水) 09:44:42ID:???
suEXECなら701でおk
httpdが動いてるユーザーがオーナーなら700でおk
0177nobodyさん2007/08/01(水) 09:47:27ID:???
ってsuEXECで701が必要なのはディレクトリだな。
実行ファイルそのものは700でおk
0178nobodyさん2007/08/04(土) 20:14:05ID:???
   【       CGI名      】 imgboard122R61g
   【    配布元URL    .】  http://www.big.or.jp/~talk/t-club/soft/mini_r6/index.cgi
   【    設置サーバ    】 girlscity
   【スクリプトチェックの有無】 無
   【      質問内容     】 管理メニューが動かない
  CGI自体は動いているのですが、管理メニューだけが動きません。
  管理メニューを動かすのにCookieが必要らしいのですが、tok2系サーバだとCookieが働かないとのことです。
  CGI本体でtok2ユーザ向けに対策が取られているのですが、その部分をgirlscity向けに改造しないと動かないようです。
  知識がないので自分で改造できそうにありません。だれか助けてください。
0179nobodyさん2007/08/06(月) 01:30:51ID:???
【 スクリプト改造依頼スレ 】(丸投げ) part6
http://pc11.2ch.net/test/read.cgi/php/1157787046/
0180nobodyさん2007/08/06(月) 10:43:41ID:???
既存CGI改造の話ではないんですが、質問です。

ブログのスパム対策で、POSTリクエストが来たら人間判定を行い、
OKなら本来のCGIにチェインし、NGならそのPOSTは捨てるような
Perlスクリプトを考えています。

そのPOST要求がNGとなれば、「それじゃあ受け付けられねーぜ」
みたいなメッセージを表示して終了するんですが、このとき標準入力の
内容は読み捨てておいた方がいいんでしょうか。それとも勝手に破棄されるんでしょうか。
0181nobodyさん2007/08/06(月) 11:12:26ID:???
そのままプロセスが終了するんだし、ほっとけば
01821802007/08/06(月) 15:21:32ID:???
>>181
なるほど、同時に複数のPOSTリクエストが来ることもありえるんだし、
ずっと保持されるわけないですよね。

となると、今度は本(?)CGIにチェインするまでに、どうやってもとの
POSTデータを保持しようかという問題が。本処理(書き込み)の前に
2回余計なCGI経由するわけで、プロセス間通信てわけでもないし…。
ちゃんと応答があるとは限らないから(というか、応答の有無でロボット
判定するようなもんだし)ファイルもよくないだろうし、困った。

何かいい方法あれば教えていただけるとありがたいです。
0183nobodyさん2007/08/06(月) 15:38:38ID:???
どうやってチェイン(呼び出)してんの?
それによってやり方変わるでしょ。
01841802007/08/06(月) 20:23:35ID:???
>>183
元のCGIはHTTPプロトコルでは触れないところにあって、
execで直接呼び出そうと考えています。
Locationとかでリダイレクトするようにすると、直接アクセスされたら
意味ないですからね。

(1) フォームからのPOST受付&人間判定フォーム表示CGI
(2) 人間判定フォームからのPOST受付&判定(スパムの場合はここで終了)
(3) 元CGI呼び出し

(2)と(3)は処理の流れが引き継がれると思うのですが、(1)と(2)の間を悩んでおります。
何かいい方法あるでしょうか。
0185nobodyさん2007/08/07(火) 09:36:21ID:???
だったら相手に合わせた渡し方すればいいじゃん
01861802007/08/07(火) 22:31:06ID:???
>>185
サーバーはLinuxなんですが、Linuxでのプログラム暦は浅いんで、
どんな方法があるのかよくわかりません。
>>184の(2)では新しいプロセスが起動するわけで、どうやって(1)と関連付けるか
ちょっと検討つきません。
常套手段等教えていただけるとありがたいです。
0187nobodyさん2007/08/08(水) 10:36:30ID:???
>>186
いや、、呼ばれる側がcgiと同じようにするんだったら
自分で標準入力で読んだ物をそのまま渡せばいいだろうし
パラメータを解析済みなら、そのパラメータを使って渡せばいいし

子プロセスなのか、そのまま置き換わるのかでも変わってくるけど
01881802007/08/08(水) 12:33:45ID:???
>>187
えー、>>184の(1)は判定用のフォームを表示して終了してしまうし、
(2)は関係のない新しいプロセスだし、そもそも(2)は起動されないかもしれない。
さらに複数のPOST要求もありうることを考えると結構難しそうですが…。
設計変かな。もう少し考えてみます。

# ここって意外と静かなんですね。
0189nobodyさん2007/08/18(土) 14:35:06ID:HSoe82OB
すいません、質問ですが、自作のものすごい簡単なCGI掲示板を設置したら
特定の文字と文字(例えば”申し”と書くと”申¥し”に)の間に¥マークが入ってしまうのですが、これの原因はなんでしょうか?
また解決法をもしご存知でしたら教えて頂けますか?
0190nobodyさん2007/08/18(土) 15:07:30ID:???
「perl ダメ文字」でぐぐれ
0191nobodyさん2007/08/18(土) 21:03:13ID:???
>>190
ありがとうございました。
0192nobodyさん2007/08/24(金) 22:14:24ID:???
ちょっとお聞きしたいのですが
たくさん話題並べてそれに対するレビューを書き込み閲覧できる様なCGIは難しいのでしょうか?

掲示板型を一つずつに貼り付ける事も考えたのですが
それではとても手間がかかってしまって

上記のやり方しか無いのかもっと良い方法があるのか
アドバイスがあったらお願いします
0193nobodyさん2007/08/25(土) 00:54:40ID:???
blog改造すれば
0194nobodyさん2007/09/07(金) 03:27:05ID:???
質問です、よろしくお願い致します。
【CGI名】 T-Dictionary Ver.0.92b
【配布元URL.】  http://www.mytools.net/cgitools/dictionary0.html
【設置サーバ】 AllInOneServer  http://www.allinoneserver.net/use.html
【質問内容】 
配布元URLの、インストール方法の12でつまずいてます。
11でテストURLにアクセスできたのですが、管理用ページからログインすると
「LO-0002: ファイルを書き込みモードで開くことができません。」と出ます。

ディリクトリ構成は以下になります。
+ tdp*.cgi (705)
+ tdl*.pl (604)
+ jcode.pl (604)
+ tdd*.txt (606)
+ tdt*.htm (604)
+ index.htm (604)
+ <lockdir> (707)
+ <html> (707)
+ tds*.html (604)
+ tdisjs.js (604)
+ tdisty.css (604)
+ index.html (604)
+ <files> (707)
+ <images> (707)
パーミッションは、設置サーバーでは
・CGI等の動的アプリケーションは実行権を付ける必要があります。パーミッションは755にしてください。
・なお、CGI当からアクセスするファイルは書き込みの権限が必要ですので、666にしてください。
と書いてあります。なので+ tdp*.cgi (705) を755にしています。
どのファイルを666にすればいいのかわかりません。
また、他にも755にすべきファイルはありますでしょうか?それともパーミッション以外の理由なのでしょうか?
0195nobodyさん2007/09/07(金) 10:40:09ID:???
LO-0002 って出てんだからそのメッセージのある辺りのソース読めばいいだろ
サーバの設定状況にもよるが、606 と 666は同じだと思うぞ
どれか設定ミスってんだろう、td*.txtあたり
0196nobodyさん2007/09/07(金) 11:40:43ID:???
レスありがとうございます。
td*.txtは空ファイルで、全て666にしてみましたが症状は変わりませんでした。

tdlout.plに

### ファイルが指定されている場合はそのファイルへ
if($outfile ne ""){
#(-f $outfile) || &tdllib'error("LO-0001", 1, "ファイルが存在しません。", "ファイル名:$outfile");
open(OUT, ">$outfile") || &tdllib'error("LO-0002", 1, "ファイルを書き込みモードで開くことができません。", "ファイル名:$outfile");

て書いてありました。tdlout.plを666にしても644にしても症状はかわりません。
0197nobodyさん2007/09/07(金) 12:12:40ID:???
だったらそのエラーメッセージの
"ファイルを書き込みモードで開くことができません。"

"ファイルを書き込みモードで開くことができません。ファイル名:$outfile"
にして実行してみろよ
0198nobodyさん2007/09/07(金) 12:22:44ID:???
ごめんなさい、どうすればいいのかわかりません。
エラーメッセージ自体を修正するということですか?
0199nobodyさん2007/09/07(金) 12:28:38ID:???
そうだよ。
そうでなくとも、その内容じゃどっかに表示されてる気がするけどな
0200nobodyさん2007/09/07(金) 13:41:40ID:???
なるほど、やってみます。
ありがとうございました。
0201nobodyさん2007/09/18(火) 16:03:29ID:yZ6crNDk
   【       CGI名      】 Range to CIDRな装置 1.00
   【    配布元URL    .】 http://sv2ch.baila6.jp/chk_r2c.cgi?source
   【    設置サーバ    】 http://HDOfb-05p4-109.ppp11.odn.ad.jp/ip/chk_r2c.cgi
鯖環境:WinXPsp2、鯖ソフト:04WebServer1.86(最新ver)
   【スクリプトチェックの有無】 cgiの動作は問題無しですが、文字化けしちゃいます
   【      質問内容     】 設置場所がWin鯖なせいか文字化けしてしまいます
文字化けを防ぐにはどこを修正したら良いでしょうか?
お願いします

【文字化け】ポチり前:表記→赴L
ポチり後:全体的にぐちゃぐちゃに・・・
0202nobodyさん2007/09/18(火) 16:15:02ID:???
>>201
ソースをEUCで保存するか、
<meta http-equiv="Content-Type" content="text/html; charset=euc-jp">
このeuc-jpをShift_JISにする。
0203nobodyさん2007/09/18(火) 16:26:28ID:yZ6crNDk
>>202
ありがとうございます
Shift_JISに変更したのですが、相変わらずでした
0204nobodyさん2007/09/18(火) 17:29:53ID:???
おっと、ソースまで見てなかったぜ

print qq|Content-type: text/html; charset=euc-jp\n\n|;
これも替えとけ。つーか気づけw
0205nobodyさん2007/09/18(火) 17:47:03ID:yZ6crNDk
>>204
あ、下の方にもあったんですね。ありがとうございます
ソース見ても何の事やらわからない人間なのでスルーしてましたw
全体的な文字化けは直ったのですが「表記→赴L」だけおかしいんですが、
これは何が原因なんでしょうか?

>IPアドレスのレンジ赴L(127.0.0.0-127.255.255.255みたいな)をCIDR赴L(127.0.0.0/8みたいな)にする装置です。
0206nobodyさん2007/09/18(火) 17:49:46ID:???
あー、、、0x5Cか
表記の表の字の2バイト目がSJISだと \ だからなあ
EUCにするのがいいけど、SJISで対応するなら
表記 → 表\記
にしてみ
0207nobodyさん2007/09/18(火) 17:56:45ID:yZ6crNDk
>>206
ありがとうございました
おかげさまで完全に直すことができました
0208nobodyさん2007/09/21(金) 15:19:53ID:ChIVEQuV
なかなかよい会社だったよ
http://www.tyranno.co.jp/
0209nobodyさん2007/09/23(日) 01:31:50ID:B51LipLv
KENTさんのWEB PROTECTを使い
http://www.cj-c.com/cgi_s/upb.htm こちらのUPBへのアクセス制限を作成しているのですが

私の設置しようとしているスペースは@niftyなので
http://homepage1.nifty.com/mystaff/howto/protect.htm を参考に設置しました。


----------------------------------------------------
 require './jcode.pl';
----------------------------------------------------
      ↓
----------------------------------------------------
 require './jcode.pl';
 require './cook3.cgi';  #←cook3.cgiの読込
 &cookCheck;       #←クッキー認証のチェック
----------------------------------------------------

とするとアクセスできず、初期の状態であれば正常にupbにアクセスできました。

追記した状態でアクセスすると
「CGI実行エラーです」
というエラーメッセージが表示されました。

認証後のhtmlページへはアクセスできたので、
WebProtectは正常に設置できていると思います。

また、上記のような症状から、
2行の追記方法に問題があるのではないかと思うのですが
解決策など教えてください。

よろしくおねがいします。
0210nobodyさん2007/09/23(日) 01:52:52ID:???
cook3.cgiってのがどういうのか知らないけど
requireするなら真を返さないとエラーになるでしょ
cook3.cgiのソースの最後の部分に 1; みたいなの書いてある?
02112092007/09/23(日) 01:55:18ID:B51LipLv
>>210
あります。
0212nobodyさん2007/09/23(日) 08:54:52ID:???
エラーログ見られないのか?
無理なら2行目に Content-Type: の出力して試してみて
02132092007/09/23(日) 13:18:28ID:B51LipLv
・・・よくわかりません
0214nobodyさん2007/09/24(月) 11:17:17ID:XsGHXQej
http://apps.cside.com/theme/tmresmail/ をYAHOO-Webhosに設置したところ
エラー404や500などの表示ではなく、何も表示されない(真っ白)状態です。パーミッションの設定は済んでいます。
通常のメールフォームcgiは正常に動きます。スキンhtmlが表示できないので悩んでいます。どなたか御教授願いたしッス
02153892007/09/25(火) 13:06:25ID:???
   【       CGI名      】 shiromuku(u3)LINKS version 1.01
   【    配布元URL    .】 http://www.t-okada.com/cgi/
   【    設置サーバ    】 wing2
1、ディレクトリのパーミッションは701
2、CGIファイルのパーミッションは700、705、755
3、cgi-binフォルダ以下では .plと画像と.cgi以外のファイルは動作しない
という条件のサーバ(Perlのバージョン:5.8.8)を借りています。
   【スクリプトチェックの有無】 自PCのapacheでは稼動しました、パスかパーミッションの問題だと思います。
   【      質問内容     】  色々試したのですが、大体505エラーになります。
一番順調に稼動したのは
1、cgi-binにsu3_links_dディレクトリ(701)とcgiファイル(755)を設置
cgi-bin外にhomepageというディレクトリを作り、su3_links_dとsu3_links_dimgを設置

2、cgi-binにsu3_links_d、su3_links_d、su3_links_dimgの全ディレクトリ(701)とcgiファイル(755)を設置
⇒su3_links.cgiでパス設定まで可能。su3_links_a.cgiにアクセスするとErrorになってしまう状態です

shiromukuさんでも質問したのですが、お返事をいただけなさそうなので、どうかよろしくお願いします。
■ このスレッドは過去ログ倉庫に格納されています