ホーム > オンラインマニュアル > 各種ソフトウェア設定 > CGI、SSIの使用法

CGI、SSIの使用法

CGI,SSIについて

御客様独自のCGIを実行することができます。
[ご注意] 2001年2月1日以降に開通しているサーバでは、cgi-binディレクトリ内でのみCGIの実行が可能です。例えば/home/clara.ne.jp/cgi-bin/に設置されているCGIは、http://www.clara.ne.jp/cgi-bin/というURLとなります。CGIにより、Perlスクリプトの実行が可能です。 (シェルスクリプト、C言語プログラムの実行も可能ですが、推奨いたしておりません。) ただし、独自に作成されましたPerlスクリプトはサポートの対象外とな ります。スクリプトの内容に関しましては製作、配布元へお問い合わせくだ さい。当社にお問い合わせ頂いてもご回答致しかねますので予めご了承下さ い。

また、インターネット上においてPerlスクリプトが無料で配布されております。以下のURLを参照してください。 ※Perlスクリプトの動作に弊社が責任を持つものではありません。
KENT WEB ネットサーフ レスキュー[Web裏技]RESWEB.GIF

CGIが動作しない場合、下記の点をお確かめ下さい。

プログラム1行目のPerlのパスは合っていますか?

パスの記述が正しくない場合、エラーを返します。また、Perlのパスが一行目にない場合、「改行」があって2行目になってしまっている場合も同様です。 なおパスはサーバによって異なります。お客様へサーバの開通時にお送りした「アカウント設定完了のお知らせ」をご参照下さい。

jcode.pmについて

jcode.plと同等の機能をPerl5のモジュールとして実現したものです 。Perlではライブラリやモジュールを使って機能を拡張できます。 モジュールとライブラリの違いは、ライブラリはPerlのスクリプトであ るのに対し、モジュールはCで書かれた共用モジュールとして書くこと が可能である点です。このため、実行速度が速いという利点があります 。また、モジュールはライブラリと名前空間を分けることができます。 jcode.pmを使用される場合、スプリクト上で"use Jcode;"として頂 ければ利用可能な状態となります。

CGIスクリプト以外のファイルは/cgi-bin/以下で動作しません

弊社サーバは、/cgi-bin/以下を全てCGIスクリプトとして 処理する仕様となっております。そのため、/cgi-bin/以下にある画像ファイルやhtmlファイルなどはCGIスクリプトと判断され、正常に表示されません。CGIスクリプトを用いてhtmlファイルを自動生成する際は、出力先に/cgi-bin/以外を設定するようにして下さい。

FTPでの転送モードは合っていますか?

FTPの転送モードは「テキスト(ASCII)モード」と「バイナリモード」があります。CGIスクリプト、html、ログファイル(*.log,*,txt,*.dat)は「テキストモード」で転送します。画像(jpeg,gif)や音声(midi,wav)などは「バイナリモード」で転送します。

パーミッション(アクセス権)は正しいですか?

指定されたパーミッションに書き換えされていますか?パーミッションにより拒否がされる場合は、設定手順書やマニュアルをご参照の上再度確認してください。 一般的なパーミッションの設定は、以下の表を参考にしてください。 なお/cgi-bin/ディレクトリにおいて、そのパーミッションの末尾桁を7とした場合、CGIが動作しない設定となっております。ご了承ください。
なお、優先されるのは各CGIの設定手順書に記載されているパーミッションになります。パーミッションの値は該当CGIの製作者様にご確認ください

データファイル(html、画像など) 660
CGIファイル 770
データ用ディレクトリ 771

require文のパス指定先は合っていますか?

掲示板などで日本語のデータのやり取りを行うスクリプトには必ずといっていいほどjcode.plを呼び出すパス 「require './jcode.pl';」などという require文があります。ここで指定するパスが正しくないとサーバエラーになります。

スクリプトの書き換え作業において、「"」や「\」や「;」などのマークを消してしまっていませんか?

スクリプトの書き換え作業において、これらのマークを消してしまった場合、文法エラーを起こします。1つでも記述を間違えては動作しませんのでご注意ください。

「#exec」の記述はありませんか?

<!--#exec cmd="cat ./count.dat"-->のような「#exec」のSSIはご利用になれません。

.htaccessに誤った記述をしていませんか?

アクセス制限等を行うためhtaccessを設置した際に、記述内容に誤りがありますと、"500 -- Internal Server Error"などと表示されます。その際、画面上やログファイル(error_log)の末尾にエラー原因が記述されますので内容をご確認下さい。(スクリプトの文法エラーなど他の要因で同様のエラーが表示されることがありますが、ログを参照することにより原因の特定が可能です)

Perlスクリプトが要求するバージョンに対応していますか?

PackageSS/Dならびに一部共用サーバではVer5.00x、現行専用サーバサービスではVer5.6を使用しております。

CGIは、利用方法によってはサーバに多大な負荷を与えてしまう場合がございます。そのような場合には弊社のご利用をお断りさせていただく可能性もございますのでCGIのご利用に関しましては細心の注意を払っていただけますようよろしくお願い申し上げます。また、CGIチャットのご利用に関しましては上記の理由により弊社ではお断りさせていただきます。

Copyright © 1997-2003 Clara Online Inc., All Rights Reserved.