■バーチャルドメイン
CGIプログラムの使い方
CGIは自由に使えるようになっていますが、間違った設置方法やパーミッション設定などでは動作しませんので
下記を参照に正しく設定してください。
ファイル拡張子 |
***.cgi
|
---|
パーミッション |
755(又は rwxr-xr-x) |
.htaccess ファイル |
不要 |
※ パーミッションについて、CGI付属の説明書で 777 と指定されているものがありますが、
弊社のサーバでは suexec という機能により 755 の設定で安全にCGIを動作させることができます。
|
パーミッションはFTPソフトで設定するか、TELNETで接続して chmod コマンドを使って設定してください。
CGIファイルの改行コードはUNIXの形式(LFのみ)になっている必要があります。
WindowsやMacintoshで編集されたファイルはあらかじめ改行コードを変更してから転送するか、
FTPソフトの設定でアスキーモードで転送するようにしてください。(fetchなどの自動判別は失敗することがあります)
多数のチャットCGIなどを置くにはあまり向いていません。
(禁止ではありませんが BUSY メッセージが比較的多く出るようになることがあります)
フリーソフトのCGIなど、個々のソフトウェアについては製造元へお問い合わせください。弊社へお問い合わせいただいてもお答えしかねます。
各種コマンドのパス
Perl (バージョン5) |
/usr/local/bin/perl 又は /usr/bin/perl |
sh |
/bin/sh |
csh |
/bin/csh |
Sendmail |
/usr/sbin/sendmail |
gzip |
/usr/bin/gzip |
nkf |
/usr/local/bin/nkf |
uuencode uudecode |
/usr/bin/uuencode /usr/bin/uudecode |
Procmail |
/usr/local/bin/procmail |
この他にも多数のコマンドがありますが、コマンドのパスはTELNETで接続し
which コマンド
と入力すれば自動的に検索され表示されます。
ワンポイント
- CGIを設置したがCGI Permission/Execute Errorというエラーが出る
CGIのファイルかそのディレクトリのパーミッションが正しくありません。
そのエラーの内容も表示されていますのでエラーメッセージを確認し、パーミッションを修正してください。
- CGIを設置したがInternal Server Errorというエラーが出る
CGI自体のエラーです。(パーミッションは正常です)
CGIプログラムの文法ミスや文字コード、必要なファイルなどを確認してください。
- アクセスするとService Temporarily Unavailable又はCGI Execute BUSY!!というエラーが出る
アクセスが多すぎるか、CGIが動作不良を起している可能性があります。
(後者のほうが確率が高いようです)
- 掲示板(チャット)のファイルロック機構は flock と link(又はopen)のどちらが良いか?
flockはファイルロック専用の関数なのでこちらが確実です。
linkなどは疑似的なファイルロックに使えるというだけで、動作不良の原因となります。
一部のCGIでは疑似的ロックしか使えないものがありますが、アクセスが多いサイトでは頻繁に動作不良を起こす原因となります。
カウンタCGI
CGIを設置できない方のためにあらかじめカウンタCGIを使える状態にご用意していますのでご利用ください。
例文のHTMLを参考に、HTMLファイル内にタグを書くだけで簡単にカウンタを使うことができます。(例文をそのままコピーしてパラメータを変えれば使えます)
また、パラメータを指定することにより、色やフォントなどを変えることができます。パラメータは「&」で区切って複数書くことができます。
Count.cgi の使い方例
<IMG SRC="http://cgi.dns.ne.jp/cgi-bin/Count.cgi?パラメータ">
例 
<IMG SRC="http://cgi.dns.ne.jp/cgi-bin/Count.cgi?df=sample.dat&md=5&dd=C& ft=2&frgb=FFA040">
例 
《Count.cgiのパラメータの一例》
パラメータ | 省略時の値 | 説明 |
df=文字列 | 必須 |
カウント値を識別するエントリ名 (例えば df=hogehoge01 など、アカウント名などを使って他の人と同じにならないように名前を付けてください) |
st=数値 | 1 |
カウント値を初期設定する (初めて使用するときのみ指定できます) |
md=数値 | 6 |
カウンタの桁数(5〜10) |
ft=数値 | 4 |
カウンタの周りのフレームの太さ |
frgb=RRGGBB (16進) | 648BD8 |
カウンタの周りのフレームの色 |
dd=文字列 | A |
カウンタの文字フォントを指定(1〜5 又は A〜E) |
srgb=RRGGBB prgb=rrggbb | なし |
RRGGBB の色を rrggbb で置き換える |
他のパラメータについては作者様のページに掲載されています。
(このCGIについて作者様への問い合わせはご遠慮ください)
Count.cgiは同じアクセス元から連続でアクセスされたときはカウントしません。
npc.cgi の使い方例
<IMG SRC="http://cgi.dns.ne.jp/cgi-bin/npc.cgi?パラメータ">
例 
<IMG SRC="http://cgi.dns.ne.jp/cgi-bin/npc.cgi?L=inforest-test&W=7&C=00FF00, FF4080&P=ON&INIT=1">
例 
《npc.cgiのパラメータの一例》
パラメータ | 省略時の値 | 説明 |
L=文字列 | 省略不可 |
カウント値を識別するエントリ名 (ユーザーIDなどを使って他の人と同じにならないように) |
INIT=数値 | 1 |
カウント値を初期設定する (初めて使用するときのみ指定できます) |
W=数値 | 5 |
カウンタの桁数(1〜10) |
P=ON | OFF |
GIFアニメーションをONにする |
A=[G|S] | G |
A=G でGIF98aのアニメーションモード、 A=S でserver pushによるアニメーション |
DI=数値 | 0 |
カウンタの文字フォントを指定(0〜3) |
C=RRGGBB,rrggbb (16進) | 000000,FFFFFF |
文字の色をRRGGBB、背景をrrggbbに指定 |
他のパラメータについては作者様のページに掲載されています。
(このCGIについて作者様への問い合わせはご遠慮ください)
Island無料掲示板サービス
高速動作の掲示板が無料で作れるサイト「Island(アイランド)」もご利用ください。
(さくらインターネットのサービスとは直接関係はありませんので、誰でも自由にご利用いただけます)
|