スマートコネクト マネージドサーバ

ユーザーサポートサイト>操作マニュアル>プログラム・CGI>CGIの利用

CGIの利用

CGI

CGIは、アクセスカウンタや掲示板を設置する場合によく利用されます。HTMLに比べ若干設置方法は難しくなりますので、以下の情報をよくお読み頂いた上で設置を行ってください。

対応言語

CGIの作成にご利用頂ける言語はPerl5です。

各種プログラムのパス

以下のプログラムをご用意しております。CGIからこれらのプログラムを呼び出して利用できます。

Perl /usr/bin/perl または /usr/local/bin/perl
Sendmail /usr/sbin/sendmail
Nkf /usr/bin/nkf
pwd /bin/pwd

なお、perlのCGIスクリプトの1行目にperlのパスを記述する場合は、 #!/usr/bin/perlまたは#!/usr/local/bin/perlと記述してください。

CGIファイルの転送

CGIファイルをサーバに転送する時は、管理者ID(webmaster)を使用してFTP接続し、転送を行ってください。

CGIファイルは以下の2つの設置方法があります。

  • /html, /html.stage へ設置する場合
    .cgi 及び .pl の拡張子のファイルのみ CGI ファイルと認識されます。/html,/html.stage へ設置する場合、拡張子が適切に付与されていなければ通常のファイルとして閲覧可能な状態となってしまうため、ご注意ください。
  • /cgi-bin へ設置する場合
    拡張子に制限はありません。 SSL通信の場合も /cgi-bin を共用します。

ほとんどのFTPソフトには、バイナリモードとアスキーモード(テキストモード)という2種類の転送モードがありますが、CGIのファイルを転送する場合は必ずアスキーモードで転送してください。バイナリモードで転送すると正常に動作しない場合がございます。

ディスク容量不足時のデータ消失

使用しているディスク容量がご契約容量を超えてしまい、容量が不足している時にCGIがファイルに書き込みを行うとファイルが破損して内容が消失してしまう場合がございます。このため、アクセスカウンタや掲示板のようなデータファイルにデータを書き込むタイプのCGIをご利用になる場合は、必ず十分な空き容量を確保するようにしてください。

パーミッションの設定

サーバにファイルを転送したら、パーミッションの設定を行ってください。 パーミッションの設定が正しく行われていないと、CGIが正常に動作しなくなったり第三者からの不正なアクセスを受けてしまったりする可能性がございます。

sendmailの使用

CGIでEメールを送信する処理を行う場合は、サーバに用意されているsendmailを利用できます。 sendmailが置かれているサーバ上のパスは、/usr/sbin/sendmailです。 CGIスクリプト内で記述するコマンドの書式は、以下のようになります。

/usr/sbin/sendmail -t -f 「発信元アドレス」

「発信元アドレス」にはEメールの発信元として使用するメールアドレスを入力して下さい。通常はお客様ご自身のメールアドレスを設定して頂ければ問題ありません。
例)発信元をabc@mngsv.jpにする場合

/usr/sbin/sendmail -t -f abc@mngsv.jp

と記述してください。

モジュールについて

当サービスでご用意しているモジュールについては以下をご覧ください。
また、ご利用ドメイン領域にお客様が設置してご利用することも可能ですが、動作の保証は致しかねます。
Perlモジュール一覧