![]() |
カレッヂ |
質問者 ザク
投稿日 2008/6/4(水) 18:07:02
初期的な質問です。 サイトの/form/に設置したいと思い、その中にcgi-binフォルダを設置し、 その中に下記のファイル1、form2mail.cgi 2、 jcode.pl3、cgi-lib217.pl 4、base64.pl <644>とtmpフォルダを作りました。 解凍ファイルの中にsample1.htmlがあったので、 <form action="form2mail.cgi" method="POST" ENCTYPE="multipart/form-data"> のactionをcgi-bin/form2mail.cgiにして、 cgiの中の #------ 初期設定 --------------------------------------------------------------------------- #■日本語コード変換ライブラリ # require './***.pl'; と require '***.pl';は意味が違いますので、注意。 require './jcode.pl'; #■CGIライブラリ require "./cgi-lib217.pl"; #■MIME変換ライブラリ require "./base64.pl"; #■sendmailの設定 $sendmail =/usr/lib/sendmailopen(MAIL,"| $sendmail -t "); #■作業用ディレクトリの設定 # 同じディレクトリにtmpという名前のディレクトリを作成し、パーミッションを777(サーバの最適な値にあわせること)にします。 $tmp = "./tmp/"; #■受け取るメールアドレス $mailto = 'メールアドレス'; #■フォーム画面に付けるタイトル $title = 'フォーム送信'; #■参照チェック #送信フォームのURLがここに設定した文字列を含まない場合は送信しない $ref_url = 'form/'; #■このスクリプトを設置する日本語コード (sjis,euc) $convert = 'sjis'; #■アクセス元をチェックする(いたずらで困っている場合のみ) 0:しない 1:する $ref_check = 0; としたのですが、 送信ボタンを押すとCGIの内容が表示されるだけです。 初めて、CGIなるものを設置したいと考えているのですが、どのようにすれば宜しいのでしょうか?
【習熟度】初めて |
回答者 アン
[削除]
投稿日 2008/6/12(木) 07:17:21
>サイトの/form/に設置したいと思い、その中にcgi-binフォルダを設置し、 >その中に下記のファイル1、form2mail.cgi 2、 jcode.pl3、cgi-lib217.pl >4、base64.pl <644>とtmpフォルダを作りました。 1.cgiはサーバのセキュリティを脅かす存在ですが、そのサーバはcgiを置いても 良い設定になってますか? 2.もし、なってたらcgiは勝手にcgi-binディレクトリ(普通はフォルダはWindows です)を作っても良いんですか? 3.もし、cgi-binが設置可能として、サーバがAllowOverride allの設定になって いて(こうすると各ディレクトリで設定をOverrideできる)尚かつcgi-binディレク トリに.htaccessファイルがあり、その中にOptions +ExecCGIの記述がありますか? 4.その上でform2mail.cgiは705(又は755、サーバによる)他のファイルは604 (又は644)、ディレクトリが707(又は777)のパーミッションになってますか? この4つが合ってれば、cgiは動きます でも、多分普通のサーバの管理者は1を許可しないでcgiを管理者側で設置すると 思います cgiがそこら中置けたらカオス状態かも(^^ |
返信(回答)する
このページ:http://www.rescue.ne.jp/CGI-BBS/an/formmail/20080604180702.shtml | Web裏技 |