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

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

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

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

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

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

※ エラーがでてるならエラーメッセージも書くように。
続きは>>2-5辺り。
0797nobodyさん2009/10/19(月) 00:15:18ID:F4PxG8Ll
>>796
ありがとうございます!
早速調べてみます
0798nobodyさん2009/10/19(月) 00:53:37ID:???
各スレの>>1は良く見ろよって書くべきだったか。
まったくゆとりって奴は・・・。
0799nobodyさん2009/10/19(月) 02:04:46ID:???
ものすごい初心者なのですが、↓教えて下さい。

ダウンロードした掲示板CGIスクリプトを
fetchにてアップロードしたのですが、
動作確認はどのアドレスで行えばいいのでしょうか?
0800nobodyさん2009/10/19(月) 02:17:37ID:???
>>799
どこに何をアップしたのかわからないと答えようが無いのだが。
0801nobodyさん2009/10/19(月) 02:45:17ID:???
>800
一応ここのhomepage↓から掲示板へリンクさせたいのです。
http://homepage3.nifty.com/meropin/

プロバイダの指定で、cgi関係のスクリプトファイルは
cgi-binファイルに転送しろ となっているので、
このページ↓のzipファイルをダウンロード+解凍し、
ttp://www.kent-web.com/bbs/light.html

全部cgi-binファイルに入れました。
そこから起動確認というものをしたいのですが、
このページの説明には
http://〜〜/light.cgi?mode=check
から確認しなさいとありますが、その〜〜がなんなのか
わかりません。

という状態です。。
0802nobodyさん2009/10/19(月) 02:54:50ID:???
>>801
全部書いてあるじゃねーか
http://homepage.nifty.com/make/cgi_own/
0803nobodyさん2009/10/19(月) 02:57:52ID:???
>>801
そこまでの超弩級初心者ならレンタル掲示板使えば?
niftyならココログとかもあるでしょ。
0804nobodyさん2009/10/19(月) 03:10:11ID:???
>>803
レンタル掲示板設定してみたんですが
広告がどうしてもやなんですよ。。

気長に勉強するしかないですかね。
なんだか説明を読んでもよくわからなくて
むずかしいです。とりあえず
自分が設定したCGIプログラムの居場所(http://~)
というのが知りたいのですが。。
0805nobodyさん2009/10/19(月) 03:13:59ID:???
>>802
そこも読むには読んでみたんですが、
今のところ理解できません....
0806nobodyさん2009/10/19(月) 03:23:26ID:???
>>802が理解できないとなると流石に勉強しろ、あるいは諦めろとしか言えない。
だってお前パーミッション設定とかもわかってないしやってないだろ?
0807nobodyさん2009/10/19(月) 03:27:15ID:???
>>805
は? これほど親切な説明もそうそう無いと思うんだがそれすら理解できないってどういうこと?
日本語読めないって言ってる? それとも小学生?
0808nobodyさん2009/10/19(月) 03:38:08ID:???
>>805
つかそこを理解しないとniftyじゃcgi動かせない。
理解できないなら諦めるしかない。そんなレベルだよ。
08098052009/10/19(月) 03:59:49ID:???
…ですよね。
がんばって理解するようにします。
甘えちゃってスミマセンでした。
0810nobodyさん2009/10/19(月) 07:38:32ID:kdMNopOA
web patioで、投稿者のipを投稿者の名前の横に出したいです。


理想
奈美悦子(12.34.56.789)
現実
奈美悦子(softybank123456789.bb.jp)

ホスト名が出てしまうのです。
どなたかご教授お願いいたします。
0811nobodyさん2009/10/19(月) 10:23:35ID:???
web patioが何だか知らないし調べてないが
REMOTE_HOSTをREMOTE_ADDRにすれば
0812nobodyさん2009/10/19(月) 10:32:32ID:???
ちょっと見てみたけど、
init.cgiのif ($host eq "") { $host = $addr; }の
if判定消して$host = $addr;だけにすりゃとりあえずはいけるだろう
HOST名消えちゃってもいいならね
0813nobodyさん2009/10/20(火) 05:16:08ID:pzoJEbJh
>>809
女の人かな。

ふつうのアドレスが

http://hompage1.nifty.com/abc/

ならアドレスは

http://hpcgi1.nifty.com/abc/ケイジバン.cgi

だよね。
あとはパーミシッション設定さえできれはいいはずだけど…
どやんのかな。
0814nobodyさん2009/10/20(火) 10:03:04ID:???
パーミッションはftpクライアントから変更できる
0815nobodyさん2009/10/20(火) 11:21:40ID:???
perlのパス変更したり画像別の場所に置いたりそのパス書き換えたりとやる事は一杯あるけどな
0816nobodyさん2009/10/23(金) 22:31:43ID:KXomDYrT
希望のCGI探して貰えるスレって無い?
0817nobodyさん2009/10/24(土) 04:30:09ID:???
昔はWEB制作板にあったが今はしらん
0818nobodyさん2009/10/24(土) 12:18:41ID:???
グーグル先生なら探してくれるさ
0819nobodyさん2009/11/17(火) 14:44:40ID:CAlWSo1g
   【       CGI名      】 Mogura [Plus]
   【    配布元URL    .】 http://fmono.sub.jp/v_mogura/(本家) , http://rin.usamimi.info/
   【    設置サーバ    】 bfit
   【スクリプトチェックの有無】 自分でチェックできないものは使わない

   【      質問内容     】 
設置はできたのですが、ログの取得ができません
コントロールパネルから「その他の設定 ≫ 設定確認」で見てみると、
インストールURLなど、パスがメチャクチャになっています
例えば、設置先のアドレスが「http://aa.bbb.jp/cgi/mogplus/」だとすると、
インストールURLが「http://aa.bbb.jp/cgi/mogplus/aa.bbb.jp/mogplus/」になっています
config.phpのインストールパスはちゃんと「http://aa.bbb.jp/cgi/mogplus/」と記入してあります

なぜでしょうか。お願いします
0820nobodyさん2009/11/17(火) 14:51:34ID:???
$_SERVER['HTTP_HOST']は消したのか?
08218192009/11/17(火) 15:09:17ID:CAlWSo1g
>>820
消してませんでした!
ありがとうございます、できました
0822nobodyさん2009/11/23(月) 13:23:22ID:S8oBBlOU
CGIで、タグ有効化処理というものがあります。
(説明すると長くなるので省略)

sub tag_change {
local($_) = $_[0];
1 while s/(.*)(<(b)>(.*)<\/b>)/$1<b>$4<\/b>/i;
1 while s/(.*)(<(i)>(.*)<\/i>)/$1<i>$4<\/i>/i;
1 while s/(.*)(<(u)>(.*)<\/u>)/$1<u>$4<\/u>/i;
1 while s/(.*)(<(font[\s\S.]+)\>(.*)\<\/font\>)/$1<$3>$4<\/font>/i;
1 while s/(.*)(<(hr(.*))>)/$1<hr$4>/i;
1 while s/(.*)(<(a href[\s\S.]+)\>(.*)\<\/a\>)/$1<$3>$4<\/a>/i;
$_;
}

このようなやつなのですが、この中には6つのタグが有効化されています。
上から順に、<b>タグ、<i>タグ、<u>タグ、<font>タグ、<hr>タグ、リンクタグです。

この書き方に沿って、他にも「IMGタグ(画像を表示)」「inputタグ(フォーム)」「textareaタグ」
などなど、いろいろ有効化しようとスクリプトを書いてみましたが、失敗しました。

出来れば全てのタグを有効化したいのですが、最低限、画像タグなどは有効化したいところです。

どのようなスクリプトを書けば良いか分かる方は、ぜひ教えてください。
0823nobodyさん2009/11/23(月) 13:30:26ID:???
単純な正規表現に見えますが
0824nobodyさん2009/11/23(月) 13:33:48ID:???
タグを最長マッチはまずいだろ
0825nobodyさん2009/11/25(水) 06:36:54ID:???
sub tag_change{
local($_) = $_[0];
s/&lt;/</g;
s/&gt;/>/g;
$_;
}

とかどうよ
0826nobodyさん2009/12/06(日) 23:49:40ID:???
掲示板のスパム対策でリンク先をJava Scriptで開くというのを見たんですが
この手法って今も有効ですか?
もしもっと簡単で有効な方法があれば教えてください。
0827新入社員2009/12/19(土) 15:23:44ID:RUGIDpIm
はじめまして。

新しく入社した会社で、webページを管理するように言われました。
メールフォームをサイト上に作りたいのですが、うまくいきません。

サーバーは「ラピッドサイト」です。

フリーのフォームメールを設置使用としましたが、うまく設置できなかったので、
ラピッドサイトのQ&Aをみていると、「CGIインストーラー」なるものを発見しました。
KentさんのCGIを簡単に設置できるようなので、使ってみました。

設置は簡単にでき、htmlの簡易フォームも自動で生成されました。(その時点で、そのフォームから送信テストをしましたが、問題なくメールも届きました)

さて、今度はその自動で生成されたフォームをカスタマイズしようとしたのですが、ちょっとでも内容を変更するとメールが遅れなくなるのです。
(web上では最後の「送信は正常に完了しました」まで行くのですが、なぜかメールがとどきません・・・・)

過去に3回ほどメールフォームをロリポップのサーバーに設置した経験がありますが、問題なく出来ました。

どうか、皆様のお知恵をお貸し下さい。
0828nobodyさん2009/12/19(土) 15:41:30ID:???
ラピッドサイトよく知らないけどラピッド特有のことなら中の人に聞いてチョ
CGIのいじり方がわからないなら具体的に書いてチョ
よーく考えて、どうしてもカスタマイズする必要ないならそのままでがまん汁
0829nobodyさん2009/12/19(土) 15:50:52ID:???
>>827
正直、起きてる現象だけ書かれても困る。
具体的にどのCGIのどのバージョンを設置して、どこをどう弄った結果そうなったのか。
変更済みのものうpするとか、もう少し状況を伝える努力をしてくれ。
0830nobodyさん2009/12/19(土) 18:58:59ID:???
3年ほど前からYomi-Search Ver4.21 を使ってるんですが、
きょう管理画面から登録待ちの処理をしようとしたら

 タイムアウトエラーです。
 もう一度「戻る」ボタンで戻ってからやり直してください。
 Lockmode:ディレクトリロック

と出て作業が続行できなくなってしまいました。どこをどうしたらいいでしょうか・・・
0831nobodyさん2009/12/19(土) 19:10:11ID:???
 【       CGI名      】 YY-BOARD Ver: 6.3
   【    配布元URL    .】 http://www.kent-web.com/bbs/yybbs.html
   【    設置サーバ    】 http://sofmap.jp/
   【スクリプトチェックの有無】 なし
   【      質問内容     】 
スパム投稿が多くて困ってます。対策としてアクセツ拒否をしたいのですが
<219.30.150.220.ap.yournet.ne.jp>

↑これをアクセス拒否したいのですが
↓のように設定しても書き込まれてしまうのですが何がいけないんでしょうか?

# アクセス制限(半角スペースで区切る、アスタリスク可)
# → 拒否ホスト名を記述(後方一致)【例】*.anonymizer.com
$deny_host = '*.*.*.*.*.yournet.ne.jp *.*.*.ftth.ppp.infoweb.ne.jp';

くだらない躓きかもしれませんが、わからず困ってます。よろしくお願いします。
0832nobodyさん2009/12/19(土) 20:40:15ID:???
>>830
ftpか何かでロックディレクトリの中身を消去

>>831
sofmap?と思って覗いたら納得した。まぁそれはさておき、

$deny_host = '*.yournet.ne.jp *.ftth.ppp.infoweb.ne.jp';

でもダメ?
08338312009/12/19(土) 20:49:49ID:???
>>832
ありがとうございます。その書き方に変えて様子を見てみます。
ダメなら、またお邪魔します。
0834nobodyさん2009/12/19(土) 22:07:32ID:???
>>832
Yomi-Searchの件、できました! ありがとうございます!
0835nobodyさん2009/12/20(日) 13:46:07ID:???
>>831 やっぱダメでした。

 【       CGI名      】 YY-BOARD Ver: 6.3
   【    配布元URL    .】 http://www.kent-web.com/bbs/yybbs.html
   【    設置サーバ    】 http://sofmap.jp/
   【スクリプトチェックの有無】 なし
   【      質問内容     】 
スパム投稿が多くて困ってます。対策としてアクセツ拒否をしたいのですが
<219.30.150.220.ap.yournet.ne.jp>
<145.30.150.220.ap.yournet.ne.jp>

↑これをアクセス拒否したいのですが
↓のように設定しても書き込まれてしまうのですが何がいけないんでしょうか?

# アクセス制限(半角スペースで区切る、アスタリスク可)
# → 拒否ホスト名を記述(後方一致)【例】*.anonymizer.com
$deny_host = '*.*.*.*.*.yournet.ne.jp *.*.*.ftth.ppp.infoweb.ne.jp';
くだらない躓きかもしれませんが、わからず困ってます。よろしくお願いします。

$deny_host = '*.yournet.ne.jp *.ftth.ppp.infoweb.ne.jp'; で試しましたが書き込まれてしまいました。
0836nobodyさん2009/12/20(日) 13:59:53ID:???
>>835
調べてる部分を抜き出してチェックしたけどちゃんとひっかかるよ。
httpサーバの方で逆引きしてないんじゃない?
例えばApacheならHostnameLookupsの設定とか
0837nobodyさん2009/12/20(日) 14:00:54ID:???
ってリモートホストを名前で書いてるってことはひいてるってことだな・・・
0838nobodyさん2009/12/20(日) 14:06:17ID:???
$deny_hostのすぐ上の$gethostbyaddr=1にしてる?
0839nobodyさん2009/12/20(日) 14:11:37ID:???
>>836
書き方の問題でなければ諦めようと思います。
ヘタレです、ありがとうございました。
0840nobodyさん2009/12/20(日) 14:14:47ID:???
>>838
# ホスト取得方法
# 0 : gethostbyaddr関数を使わない
# 1 : gethostbyaddr関数を使う
$gethostbyaddr = 0;

0でした1にしてみます。解決しちゃうのかな?すみませんほんと
0841nobodyさん2009/12/20(日) 14:40:18ID:???
でもまあそれ丸ごと禁止するのはいろいろと弊害でそうだけどなw
内容チェックするとか逐一ISPに報告するとかしないときつそう・・
0842nobodyさん2009/12/26(土) 17:32:37ID:fTY5/XbI
どもです。
kentさんのCGIを使ってメールフォームを作っていますが、
送信エラーになってしまいます。
チェックモードでチェックすると


メールソフトパス:NG → /usr/lib/sendmail

と表示されます。
これは、どこをどのように書き直せとの警告なのでしょうか?

よろしくお願いします。

0843nobodyさん2009/12/26(土) 17:34:58ID:???
それは設置する鯖で変わってくることだからここで聞いても答えられない
0844nobodyさん2009/12/26(土) 17:59:38ID:fTY5/XbI
843
ご返答ありがとうございます。
これはサーバー側の管理画面か何かで変更する項目なのでしょうか??
それとも、設置したディレクトリが悪いのでしょうか?

すみません。何がなんだかさっぱり分からなくなってきています。
どうか、もうすこし詳しく教えていただけないでしょうか・・・

よろしくお願いします。

0845nobodyさん2009/12/26(土) 18:07:20ID:???
わからんならまずテンプレ書けば?
0846nobodyさん2009/12/26(土) 18:15:26ID:fTY5/XbI
845さん
何とか設置が完了しました。

cgiのsendmailの内容を変えて、送信が可能になりました。
お手数をおかけいたしました。

ありがとうございました。
0847nobodyさん2009/12/26(土) 18:16:17ID:???
KENT氏のyy-bordを設置してます。
spamlog.cgiのサイズがものすごく大きくなってきてるんですが、
原本(DLしてきた白地のままの)のspamlog.cgiと差し替えても大丈夫ですか?
0848nobodyさん2009/12/26(土) 19:33:40ID:???
>>847
構わない
0849nobodyさん2009/12/26(土) 22:03:50ID:???
>>848
ありがとうございました
0850nobody2010/01/01(金) 03:16:34ID:???
既成のCGIの改造でいくらやってもうまくいかなくて困りきっています。
板違いでしたらもうしわけありません(探してみましたがCGI改造板は2001年の代物でした)
いくら改造してもエラーばかりでもう2日悩んでいます。
改造したいものはテルラさんという方のCGI解説の古い本を入手してCGIの勉強を始めました。
昔はサポート掲示板などもあったらしいのですけど今はいくら探してもサポートがありません。
質問もできません。ほんとうにここしか質問ができる場所がなくてもう困っています。
もともとのCGIは
ttp://cgicgi.webdeki-hp.com/1.htm
です。 これを改造したいのです。

したいこと
1 このスクリプトはリロードするたびに(ブラウザで更新を押すたびに)なぜかどんどん
その直前に書き込んだ文章が繰り返してどんどん書き込まれて行きます。
更新ボタンを押してもページの更新を(リフレッシュを)するだけにして、勝手にどんどんその直前の
書き込みが繰り返して書き込まれていくのを辞めたいです。

2 もうひとつは書き込んだ人の名前の下に書き込み者のIPやブラウザ名を表示させたい
です。 サンプルは
http://cgicgi.webdeki-hp.com/2.htm
です。 この二つ目を改造して使えばいいではないかといわれそうですが、ひとつめの
デザインが好きなのでなんとか一つ目のデザインのまま、2.htmのスクリプトでの書き込み
表示のようになるようにしたいと思っています。

もうこれでまるまる3日目です。完全にわからなくなって発狂寸前です。
板違いかもしれないのですけど、ほんとうに助けてください。
なお、1.htmと2.htmは解決し次第、きちんと削除します。
すみません。ほんとうに助けてください。
(他のKentさんとかのCGIを使え、というレスはなしでお願いします)
0851nobodyさん2010/01/01(金) 09:42:11ID:???
>>850
スレ違い。つかたかだか3日で発狂とかどんだけ脆弱なんだお前の精神は。

★三 【 スクリプト改造工房 PART 9 】 ★三
http://pc11.2ch.net/test/read.cgi/php/1143834740/

【 スクリプト改造依頼スレ】(丸投げ) part7再々
http://pc11.2ch.net/test/read.cgi/php/1222645553/

それぞれのスレの1をよく読んで自分にあったほうを選べ。
0852nobodyさん2010/01/01(金) 18:21:55ID:???
>>851
あけましておめでとうございます。
マジでこの二つのスレッドは検索で見つかりませんでした。
ありがとうございました。
ではこの板から速攻で撤退いたします。
0853nobodyさん2010/01/02(土) 12:40:59ID:???
   【       CGI名      】 カラオケ居酒屋あび屋 version 2.36
   【    配布元URL    .】  http://www.abi-station.com/
   【    設置サーバ    】 http://twintail.s376.xrea.com/cgi-bin/x/chat/index.cgi?
   【スクリプトチェックの有無】 custom.cgi、blfile.cgi以外はチェック済
   【      質問内容     】  ../bl/blfile.cgiを開けないと出てしまいます。
絶対パスにしても無理で、blフォルダのパーミッションも777にしていますが動作しません。
ご教授お願いします。
0854nobodyさん2010/01/02(土) 19:14:26ID:???
>>853
custom.cgiと同じ階層にblディレクトリがあるなら

$blfile = "./bl/blfile.cgi";

に変更。
0855nobodyさん2010/01/08(金) 16:02:14ID:jVR8xB3P
>>347でES-FORMの設置で質問した者です。

新しいバージョンが出ていたのでバージョンアップしようとしたところ、
別のエラーが出てしまいましたので、またご教授いただけると幸いです。

以前は、みなさんにアドバイスを頂いた結果、.htaccess を削除することで
動作させることができ、今回も同様の手順でフォームの作成はできたのですが
完成したフォームにアクセスすると

$idの値が正しくありません。

のエラーが出てしまいます。
当時からPHPのバージョンは5.2.xにアップしました。

宜しくお願いします。
08568552010/01/08(金) 16:23:42ID:???
スミマセン、、、自己解決しました。
フォームデザインのhtmlが間違えていたようです。
0857nobodyさん2010/01/09(土) 13:26:22ID:TZgWY/b7
ホームページにメールフォームを設置しようとしている者です
サーバーの仕様上、sendmailが使用できないサーバーのため、sendmailを利用しないcgiスクリプトを探していたのですが、なかなか見つかりませんでした
そこでプロバイダから提供されている下記のメールフォームを設置しようと思ったのですが、ソースを見れば送信先のアドレスがすぐに分かってしまうのが少し嫌というのが本音です
送信先アドレスを外部ファイル(cgiなど)から引っ張ってきて、代入するにはどのようなスクリプトを書いて、どのようなHTMLを埋め込めばよいのでしょうか

<FORM METHOD="post" ACTION="http://mdec.nifty.com/cgi-bin/ahpmdec.cgi" >
<INPUT TYPE="hidden" NAME="ok_page" VALUE="送信ボタンがクリックされた後に見せるページ">*1
<INPUT TYPE="hidden" NAME="to_mail" VALUE="お客様のメール(送信先)アドレス"> *2
<INPUT TYPE="hidden" NAME="sub" VALUE="受け取るメールのタイトル"> *3
<INPUT TYPE="text" NAME="name" SIZE="30" MAXLENGTH="40">
<INPUT TYPE="text" NAME="from" SIZE="25" MAXLENGTH="60">
<TEXTAREA NAME="body" ROWS="20" COLS="30">
</TEXTAREA>
<INPUT TYPE="submit" VALUE="送信">
<INPUT TYPE="reset" VALUE="クリア">
</FORM>
0858nobodyさん2010/01/09(土) 17:22:02ID:???
>>857
サーバーの仕様上で制限されてるのだから、それ以外に手段は無いと思われ。
sendmailダメだとsocketも制限されてそうだし。
0859nobodyさん2010/01/09(土) 17:23:09ID:???
gmailにでもしとけ
0860nobodyさん2010/01/10(日) 15:22:22ID:L6tmyGQT
   【       CGI名      】PerlChat 5.00
   【    配布元URL    .】http://www.din.or.jp/~hideyuki/home/
   【    設置サーバ    】http://www.orbit-space.net/~fukaidougaitirann/cgi-bin/chat/index.html
   【スクリプトチェックの有無】有
   【      質問内容     】参加人数/ ロム人数 0人が表示されず
                  困っています 2ちゃんねるの皆様 どうかご教示お願いします
08618602010/01/10(日) 15:37:42ID:L6tmyGQT
>>860 訂正 参加人数/ ロム人数 0人が表示されず×
       参加人数/ロム人数が正しく表示されず○
でした 具体的にはロムっているのに0人表示
入室してるのに0人表示になってしまいます
0862nobodyさん2010/01/10(日) 18:06:10ID:???
チャットそのものはできてんの?
0863nobodyさん2010/01/10(日) 18:17:57ID:???
>>860
perlのバージョンは?
08648602010/01/10(日) 18:28:55ID:L6tmyGQT
>>862 チャットプログラムそのものは稼働してますです
>>863 ホスティングサーバに記載がありませんです・・・

すみません 皆様にご迷惑おかけして
0865nobodyさん2010/01/10(日) 18:55:19ID:???
>>864
いや、聞くなり何なりして調べてくれよ。こっちはユーザーでもなんでもないんだからさ。
08668602010/01/10(日) 19:31:41ID:L6tmyGQT
perl5のようです お手数お掛けします・・・
08678602010/01/10(日) 20:24:27ID:L6tmyGQT
失礼ながら自己解決しました ありがとうございました
0868nobodyさん2010/01/10(日) 21:50:57ID:???
結局原因は何だったのやら
0869nobodyさん2010/02/14(日) 16:16:15ID:4/XW1dPt
【       CGI名      】 ご意見フォーム
【    配布元URL    .】 http://php.s3.to/net/#mail
【    設置サーバ    】 ローカル(xamppで)
【スクリプトチェックの有無】 ?
【      質問内容     】 
埋め込み式のメールフォームなんですが、
ブラウザで表示させたら、フォームの上に >';}}?> というゴミがついてしまいます。

ファイルに

<?php
if (is_array($err)) {
foreach ($err as $msg) {
echo '<font color="red">'.$msg.'</font><br>';
}
}
?>

という部分があるので
この最後の閉じる括弧いくつかが、改行が取れて表示されてしまったんだと思います。
試しにレンタルしたサーバーにあげても、ゴミはついたままです。
でもテスト送信したらちゃんと送れました。

このゴミを取るにはどうしたらいいでしょうか。
0870nobodyさん2010/02/14(日) 16:50:02ID:???
formmail.phpでform.phpをrequireしてる部分があるが
その状態だとform.phpをhtmlとして表示してるんじゃない?
08718692010/02/14(日) 16:57:33ID:???
いえ、form.phpの6行め
<FORM METHOD="POST から </FORM> までを貼りつけたのは
.htmlじゃなくて、ちゃんと.phpです。
他のphpスクリプトは動作してるので、おかしいなあ、と。
0872nobodyさん2010/02/14(日) 17:41:23ID:???
ブラウザ表示よりもブラウザが取得したHTMLソースのほう見たほうがいいと思う
08738692010/02/14(日) 17:47:57ID:???
ありがとうございます
ソース表示をしてみましたら、

<?php
if (is_array($err)) {
foreach ($err as $msg) {
echo '<font color="red">'.$msg.'</font><br>';
}
}
?>

の部分がまるごとソースで見えてました!
こんなこと、ないですよね。なんででしょうか?

もうちょっと見直してみて、最初から設置やりなおしてみます。
0874nobodyさん2010/02/14(日) 18:40:20ID:???
何でって、それが>>807に書いたことだが
0875nobodyさん2010/02/14(日) 21:54:39ID:???
web鯖経由せずに file:// で見てるだけなんだろうな。
08768692010/02/15(月) 09:59:18ID:???
>>875
そこまで間抜けじゃないです

設置し直したらゴミ消えました。
原因は分からないですが、ありがとうございました。
0877nobodyさん2010/02/16(火) 22:39:33ID:gjKDtPAM
チャットを設置しようとして
http://homepage2.nifty.com/ozzaki/download/nchat.lzh
をダウンロードしました。
これを
https://cp1.runhosting.com/login.html
の海外の無料サーバに設置しようとしてるんですが、どうも上手くいきません。
room1.cgiの中にある
foreach $i(1,2,3,4,5,6){
if(mkdir("$lockfile",0755)){
last ;
}
elsif($i==1){
($mtime)=(stat("$lockfile"))[9] ;
if($mtime<time()-600){
rmdir("$lockfile") ;
}
}
elsif($i<6){
sleep(2) ;
}
else{
&systemBusy() ;
exit(1);
}
}
で、どうしても systemBusy() に入ってしまいます。
念のため、国内のinfoseekのサーバで試したところ問題なく動作しました。
素人考えながら、ファイルの作成・削除などが、権限の関係でできないからでは…と
思っているのですが対処方法が分かりません。
原因、対象方法ともども、お分かりになる方がいましたら、ご教授ください。
質問方法、質問内容にも不備があるかと思いますが、足りない情報などがありましたらご指摘ください。
よろしくお願いします。
0878nobodyさん2010/02/17(水) 15:41:58ID:???
簡単なディレクトリ作るだけのCGI動かしてできてるか見てみたら
そもそもそのCGIの実行ユーザーとかディレクトリ作る場所のユーザーとかパーミッションは
どうなってんのさ
08798772010/02/17(水) 21:50:58ID:7kkP7zSS
>>878さん
878さんの言うとおり

$setmkdir = "test";

if (mkdir($setmkdir, 0755))
{
print "Content-type: text/html\n\n";
print "$setmkdirディレクトリが作成されました。";
}
else
{
print "Content-type: text/html\n\n";
print "$setmkdirディレクトリは作成出来ませんでした。";
print "mkdir failure: $!\n";

}

と、簡単なディレクトリ作成のCGIを動かしてみました。
そうしたら、案の定エラーになり
mkdir failure: Read-only file system
というメッセージが表示されました。
ディレクトリ構成は
/hogehoge.com(サブドメイン)/a.cgi
で、hogehogeディレクトリは755、a.cgiも755です。
実行ユーザーは…すいません、分からないです。
どのように調べればよろしいでしょうか?
毎度毎度、くだらない質問ですいません。
分かる方がいらっしゃったら、よろしくお願いします。
0880nobodyさん2010/02/17(水) 22:50:24ID:???
hogehogeディレクトリを777にしちゃえw
0881nobodyさん2010/02/18(木) 10:12:48ID:???
使ってるサイトがSuExecとかの設定で無い場合は、通常httpdのユーザーが実行ユーザー
ディレクトリのオーナーがアップロードしたユーザーの場合、httpdとは違うユーザーなので
ディレクトリのパーミッションは xx7 が必要。
>>808の言うとおり、777とか757とか707とかにしてしまう
0882nobodyさん2010/02/18(木) 10:14:03ID:???
808は>>880の間違いです、すみません。
0883nobodyさん2010/02/18(木) 11:32:59ID:zGQRBh18
★自分のサイトのperlスクリプト場所
 www.samohan.jp/cgi-bin/form.cgi
★買い物カゴシステムのPOST送信先(買物カゴ中身画面のアドレスと同じ)
 https://www.jacky.jp/cgi/kago.cgi?user=samohan
とします。
htmlやphpのFORMで買い物カゴシステムへPOSTせずにform.cgiでPOSTデータをkago.cgiへ送信し、送信したらkago.cgiが表示する買物カゴ中身画面へと移動させたいです。
買物カゴシステムを乗り換えるときカンタン移行できるよう、ワンクッションかませたいとおもっているのです。
今はform.cgiでフォームを表示して「送信」ボタンを押してもらい、kago.cgiへPOSTしているのですが、押さずに済ませたいのです。
★form.cgi内のpost送信ソース
 my $url = 'https://www.jacky.jp/cgi/kago.cgi?user=samohan';
 use LWP::UserAgent;
 use HTTP::Request::Common qw(POST);
 my %formdata = ('user' => 'samohan', 'item' => $item, 'price' => $price, 'kazu' => $kazu);
 my $request = POST($url, [%formdata]);
 my $ua = LWP::UserAgent->new;
 my $res = $ua->request( $request);
 print $res->content;
としてみました。
しかし
★結果(www.samohan.jp/cgi-bin/form.cgiの結果表示画面)
 Found
 The document has moved here.
となります。
'here'はリンクとなっており、リンク内容は'http://www.samohan.jp/cgi-bin/kago.cgi?user=samohan'となっています、どうしていいのかわかりません、アドバイスよろしくお願いいたします・・・。
0884nobodyさん2010/03/14(日) 19:00:28ID:???
【 メール注文用フォーム】 
【配布元URL.】http://www.cgis.biz/scripts/mail_form/ 
【設置サーバ】 http://nnsv.net/
【スクリプトチェックの有無】 無
【 質問内容】解凍したフォルダをfftpでアップロードしました。
しかし?admin.phpへアクセスし管理画面へログイン。←ここの
ことが分かりません
なにとぞお願いします
0885nobodyさん2010/03/15(月) 10:10:25ID:???
何がわからんのかわからん、日本語?
もし意味がわからないなら、そもそも設置するのは無謀
0886nobodyさん2010/03/19(金) 16:18:18ID:MGhW6b+m
【       CGI名      】 treeBBS v3.01
【    配布元URL    .】 ttp://www.groo-web.com/tree_b.html
【    設置サーバ    】 ローカルCATV
【      質問内容     】
CGI初心者で、上記BBSをHPに組み込もうとしたところ、
500エラーで表示されなかったので、エラー表示を
させると、encode・decode系のエラーであることが判明しました。
(別のレンタルサーバーでは正常に動作することを確認しています)

このcgiはencode.pmを使うことを前提に記述されているようですが、
設置サーバはperl5.6.2のため、使えないようです。

ぐぐってみたところ、
ttp://www.hidekik.com/cookbook/p2h.cgi?id=utf8p56
のようなページを見つけたのですが、訳が分かりません。

どなたか少しでも構いませんので、ご教授していただけないでしょうか?
0887nobodyさん2010/03/19(金) 17:48:14ID:???
そのCGIを使うのは諦めるか、鯖引っ越すのが一番早いと思う。
0888nobodyさん2010/03/19(金) 17:52:41ID:???
Jcode.pmが使える鯖ならEncode.pmを自作してその中でJcode.pmに処理させるとか
08898862010/03/19(金) 18:56:31ID:???
ソースいじってなんとかなるというレベルではないんですねw

鯖も友人のHPのリニューアルを手伝ってあげているので、
変えない方向で考えてます。

他にいいCGIがないので、諦めたくはないんですが、
>>888さんのもちょっと敷居が高そうです><

もうちょっと調べてみます・・・
08908862010/03/20(土) 13:42:49ID:???
お手上げなので丸投げの方に行ってみます。
>>887
>>888
レスどもでしたm(_ _)m
0891nobodyさん2010/05/25(火) 00:37:02ID:???
【       CGI名      】 mkakikomitai2(bbs)
【    配布元URL    .】 http://tackysroom.com/cgi_mkakikomitai2.htm
【    設置サーバ    】 http://www.toypark.in/
【      質問内容     】
現在稼動はしていますが、不安なのでご教示ください。
配布元の説明では、ディレクトリ:777 cgi:755 データファイル:666
といった感じになっています。
設置サーバがsuexec環境の為、ディレクトリ:777→701 cgi:755→701or700 データファイル:666→600
に変更しましたが、変更するとページが真っ白になります。
そもそも実行ファイルが読めていないらしく、700→705(または755)にすると動作します。

ちなみに、簡単なprint命令を表示させるcgiを作成してみましたが、同様に705に設定しないと表示されません。

suexec環境の利点を活かしきれていないと感じているのですが、いかがでしょうか。
0892nobodyさん2010/05/25(火) 00:58:46ID:???
実行ファイルって*.cgiのこと言ってる?
701では?
0893nobodyさん2010/05/25(火) 01:09:08ID:???
>>892
早速ありがとうございます。仰る通り*.cgiの事を指しています。
701でも同様の現象です。

ベンダに問い合わせたところ、下記回答が返ってきました。
「SuExecについては、実行権が所有者(ご利用者様)にあることが前提で、Apache自
体の動作、httpdにおける閲覧・動作は、他のユーザーにもある必要があります。」

申し訳ありません。どう解釈して良いのかわかりません・・
結局suexec環境でも、その他(パーミッション3桁の右側)に付与する必要があるという事でしょうか。
0894nobodyさん2010/05/25(火) 02:06:53ID:???
少なくともnobodyに+xは必要だろ。+rは必須じゃないが。

正直「ページが真っ白」だけでは判別つかん。ログも見れないのかい? なら仕方ない。
705で動くなら705で動かしときゃいいじゃん。そのベンダのコメントは正直わけわからんが。
0895nobodyさん2010/05/25(火) 02:15:13ID:???
>>893
そういうsuexecの組み込み方もある。suexecだから700じゃなきゃいけないということはない。
オフィシャルからの回答も得てるんだし、そんなに深く考えるようなことではないと思うが。
0896nobodyさん2010/05/25(火) 11:58:48ID:???
suexecで重要なのはたいていは真ん中が0でないと動作しない、くらいでいいかと
あとは設定によるだろう。デフォルトのままだとディレクトリ701、cgi700で動くけれど
■ このスレッドは過去ログ倉庫に格納されています