ビーネッツホスティングサービス
●CGI/SSI編
技術サポート > ビーネッツサーバー > CGI/SSI編

CGI/SSIの全般的なことについて
ファイルの拡張子は下記表のようにして下さい。
プログラム拡張子名
HTMLxxxx.html
CGIxxxx.cgi
SSIxxxx.shtml
PHPxxxx.php
○弊社では.htaccessファイルを設定する必要はありません。
○CGI/SSIファイルはユーザーディレクトリのどこに置かれても構いません。
○Sendmailのようにふるまうqmailのパスは/var/qmail/bin/sendmailです。
○/usr/sbin/sendmailや/usr/lib/sendmailもシンボリックリンクを貼っていますので、
sendmailのように動作します。

CGIのサンプルスクリプト(formmail.cgi)
#!/usr/bin/perl

use CGI qw/:standard/;
use Jcode;

my $q = new CGI;

my $mailpath	= '/usr/sbin/sendmail -t';
my $mailto	= 'mail@mydomain.com';

my $q = CGI::new();

my $namae	= $q->param('namae');
Jcode::convert(*namae,'jis');
my $zip		= $q->param('zip');
Jcode::convert(*zip,'jis');
my $todofuken	= $q->param('todofuken');
Jcode::convert(*todofuken,'jis');
my $address	= $q->param('address');
Jcode::convert(*address,'jis');
my $tel		= $q->param('tel');
Jcode::convert(*tel,'jis');
my $email	= $q->param('email');
Jcode::convert(*email,'jis');
my $msg		= $q->param('msg');
Jcode::convert(*msg,'jis');

my $message = <<"EOL";

お名前:$namae
〒$zip
都道府県:$todofuken
住所:$address
電話番号:$tel
ご意見:$msg

EOL

my $subject = 'サンプルスクリプト';
Jcode::convert(*subject, 'jis');
$subject = jcode($subject)->mime_encode;
Jcode::convert(*message, 'jis');


open SENDMAIL, "| $mailpath";

print SENDMAIL<<"EOM";
From: $email
To: $mailto
Subject: $subject
Errors-To: $mailto
MIME-Virsion: 1.0
Content-Type:text/plain; charset="ISO-2022-JP"

$message

EOM

close SENDMAIL;

print "Location:http://www.bnets.net/\n\n";


============================================================
○アンケートフォームや注文フォームなどのCGIでよく文字が化けるという場合は、 上記サンプルのようにjcode.plという文字変換ライブラリを 使用すれば、CGI送信メールをWindowsユーザが受信しても 文字化けして読めないということはありません。
よく分からない場合は弊社までお問合せ下さい。

【注意事項】
○ホームディレクトリ「www」の下に「cgi-bin」というデレクトリ(フォルダ名)は作成しないで下さい。 サーバのシステム上でエイリアス名(サーバ設定上の別名と言う意味)で「cgi-bin」を使用していますので、ご利用になれません。
CGIスクリプトなどをまとめたフォルダを作成される際は「cgi」などにして下さい。

パーミッション設定(参考例)
各ファイルやディレクトリのパーミッションの設定例です。
設定例ですのでこれが絶対ではありません。参考にして下さい。
パーミッションはデータをFTP転送された時などに変更して下さい。
設定するものパーミッション
HTMLsample.html644
CGIプログラムsample.cgi755
書き換えるデータsample.dat666
公開用ディレクトリcgi755

サーバの仕様
共用サーバのサービスタイプ別の仕様です。
エコノミータイプ
サーバOSCentOS4
WebサーバApache2
MTAqmail
文字コード標準指定無し
Perlのバージョン5.8.0〜
Perlのパス/usr/bin/perl

ベーシック/ビジネスタイプ
サーバOSCentOS4
WebサーバApache2
MTAqmail
文字コード標準指定無し
Perlのバージョン5.6.1〜
Perlのパス/usr/bin/perl
PHPのバージョン4.1.2〜

CGI/SSIをご利用になる場合の禁止事項
○大量のメールの一斉送信
○daemonとしてサーバに常駐するプログラムの利用
○サーバに高負荷をかける運用

以上のような事項が見受けられた場合はプロセスの強制終了やCGI実行を 一時停止させて頂く場合があります。




ビーネッツ