忍者ブログ
CGIについて1から書いております
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

CGIスクリプトを記述する際に注意しなければならないことを、UNIXサーバーの場合、Windowsサーバーの場合に分けて説明します。(多くのプロバイダではUNIXサーバーを利用しています。たまにWindows NTサーバーもあるようです。)

◆ サーバーがCGIをサポートしていない(共通)
セキュリティ確保のためCGIの使用を禁止していたり、CGIの設定を行っていなかったりするため、CGIを利用できない場合があります。

◆ .htaccessファイルが必要?(UNIX)
サーバが Apache などの場合、.htaccess というファイルの設定が必要な場合があります。プロバイダやサーバー管理者に問い合わせてください。また、.htaccess に記述しても有効にならない場合もありますので、サーバーの管理者の指示に従ってください。

◆ ローカルファイルを実行しようとしてる(共通)
CGIスクリプトの動作チェックは必ず、http:// で始まるアドレスでアクセスしなくてはなりません。

◆ perlのパス名があっていない(UNIX)
CGIスクリプトの1行目は、perlの絶対パス名(ディレクトリ上の位置)を正確に指定してください。絶対パス名がわからない場合は、プロバイダの説明を読んだり、サーバーの管理者に問い合わせてください。多くの場合、/usr/local/bin/perl や、/usr/bin/perl などに置かれています。

◆ CGIスクリプトの場所が適切でない(共通)
サーバーの設定によってはCGIスクリプトを置くディレクトリが制限されている場合があります。普段 HTMLファイルを置いているのとは別のサーバーに設置しなくてはならないプロバイダもあります。CGIスクリプトを置く場所がこのホームページで説明されている場所と合わない場合は、プロバイダの指示などに従って、適切にディレクトリを変更してください。

◆ CGIスクリプトの拡張子が適切でない(共通)
CGIスクリプトの拡張子が .cgi でなくてはならない場合があります。他にも .pl でなくてはならない場合もあります。これらも、サーバーの設定によって異なります。

◆ perlがインストールされていない(Windows)
Windows NTにはperlが標準では装備されていませんから、perl for Win32 や ActivePerl を入手してインストールする必要があります。また、MicrosoftのIISを用いる場合は、.cgi という拡張子に対して perl.exe が起動されるように、IISのヘルプを参照して設定を行う必要があります。(古いバージョンのIISではレジストリの追加が必要)

◆ ユーザーの権限設定が誤っている(Windows)
MicrosoftのIISでは、IUSER_MachineName というユーザーの権限でコマンドが実行されます。このユーザーがCGIスクリプトを実行する権限を持っているか確認してください。

◆ ファイルの所有者が変(共通)
他のサーバーからデータファイルを移行させたときなど、ファイルの所有者が nobody でなくてはならないのに、自分自身の所有になっていて、パーミッションが 644 でもCGIがファイルに書き込めないことがあります。
PR
この記事にコメントする
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
この記事へのトラックバック
この記事にトラックバックする:
カレンダー
04 2025/05 06
S M T W T F S
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
フリーエリア
Otock!!クーポン
カテゴリー
バーコード
ブログ内検索

Copyright © [ CGIの学び舎 ] All rights reserved.
Special Template : 忍者ブログ de テンプレート
Special Thanks : 忍者ブログ
Commercial message : [PR]