カスタムCGIの利用

メールフォームや掲示板など動的なWebサイトを作りたい場合にはCGIの利用が便利です。エクスビットのサーバでもCGIの利用が可能です。ここではCGIを利用する際の基本的な考え方について記載しておきます。

1.Perl使用時の1行目(パス)

Perlで記述されたCGIを動作させたい場合1行目は以下に設定してください。

#!/usr/bin/perl

2.利用可能なディレクトリ

CGIが利用可能なディレクトリは「/httpdocs」と「/cgi-bin」です。「/httpdocs」ディレクトリはcgiファイル以外にも様々なファイルを配置することが出来ますが、「/cgi-bin」ディレクトリはcgiファイル以外は配置できませんのでお気を付け下さいませ。CGIプログラムは必ず拡張子を「.cgi」もしくは「.pl」にする必要があります。

【注意点】
1.SSL経由でのCGIに関しては「/httpdocs」配下でのみ動作します。SSLを使用する場合は「/httpdocs」配下にCGIを設置してください。 また顧客データなどをデータベースではなくテキストファイルで保存する場合には、セキュリティー上の観点からデータのみ「/private」フォルダを使用してください。
2.サブディレクトリの場合は「/httpdocs」ディレクトリにcgiファイルを配置できません。配置する場合は「/httpdocs」ディレクトリに「.htaccess」ファイルを配置してください。

「.htaccess」ファイル内記述
-------------------------------
AddHandler cgi-script .cgi
-------------------------------

ディレクトリ 拡張子 URL
/httpdocs 「.cgi」「.pl」 http://ドメイン名/ファイル名
/cgi-bin 「.cgi」「.pl」 http://ドメイン名/cgi-bin/ファイル名

ファイルのアップロードは「/httpdocs」もしくは「/cgi-bin」に行ってください。

3.パーミッション

弊社サーバではsuEXECという仕組みを使ってCGIを動作させています。この仕組みを使うことでセキュリティーが高い状態で安全にCGIを動作させることが可能です。suEXEC環境でCGIを動かすには以下の制限があります。CGIプログラムにパーミッションを設定する際には注意してください。

「CGIプログラムに対して所有者以外に書込権限を付与してはいけない」

なおプレミアエクスビットではCGIプログラムに対して以下のパーミッションを推奨しています。

CGIプログラム 755
ディレクトリ 755
記録用ファイル 600

記録用ファイルとはカウンタプログラムなどで、現在のアクセス数を記録するためのファイルです。これらのファイルに関しても、所有者以外には書込権限を設定しないようにしましょう。

4.各種プログラムのパス

CGIから使用するsendmailなど各種プログラムのパスは以下のようになっています。

sendmail /usr/sbin/sendmail
nkf /usr/bin/nkf
 
ドメイン検索 無料お見積もり
お問い合わせ-premierについて分からない事等ありましたら、お気軽にこちらからお問い合わせ下さい。 資料請求-premierの資料をご希望の方はこちらのフォームよりお申し込み下さい。 小冊子請求-レンタルサーバーで何が出来るか詳しく解説しております verisign 全国ホームページ制作会社検索サイト ウェブブリッジ ログイン

会社概要
特定商取引法に基づく表記

サイト内検索

サイト内で必要な情報を検索したい場合はこちらの検索ボックスをお使い下さい。

当サイトではプライバシー保護のため、SSL暗号化通信を採用しています。シールのクリックにより、証明書の検証結果をご確認頂けます。

プライバシーマーク

個人情報保護方針
個人情報取扱について

IS 577935
ISO/IEC 27001:2005
認証の登録範囲
クラウド(ASP)サービス/ハウジング/ホスティングサービス/情報処理システム開発のための特定労働者派遣サービス/パッケージソフトウェアの開発、販売及び保守