一般的な質問

Internal Server Errorが出て、動作しません。 other 権限で CGI が実行されるサーバですが、動作しません。 Windows サーバでも利用できますか?

Internal Server Errorが出て、動作しません。

Internal Server Error の原因は多岐にわたり特定は難しいのですが、少なくとも以下の項目を確認して下さい。

サーバの環境
  • 独自 CGI の設置が許可されていること。プロバイダーによっては CGI 設置を許可していません。そのようなサーバに CGI を設置したとしても動作いたしませんので、ご確認ください。
  • Perl5 がサーバにインストールされていること。Perl4 では動作しません。
  • サーバが Unix 系 OS であること。fuotmi's CGI Cafe で公開している CGI はすべて UNIX サーバを前提に作成されております。 Windows 系サーバでは動作しません。
CGI の設置
  • サーバへファイルを転送する際に、転送モードを正しく設定して下さい。 ファイルごとに転送モードを指定する必要があります。FTP ソフトによっては自動認識するものがありますが、 ファイルの拡張子によってはバイナリーモードで転送する場合があります。マニュアルで指定して転送することをお勧めします。
  • CGI ファイルの 1 行目の Perl のパスを正しく設定してください。サーバによって Perl のパスは異なります。 ご自分の環境に合わせて修正してください。配布された状態では、1 行目は #!/usr/bin/perl となっております。
  • ファイルパーミッションを正しく設定して下さい。 サーバによってファイルパーミッションは異なります。 必ずプロバイダーやレンタルサーバ業者から指定されたパーミッションに設定して下さい。
  • CGI 設置の注意事項は、「CGIセッティングの7ヶ条」コーナーにまとめてありますので、 ご覧下さい。

other 権限で CGI が実行されるサーバですが、動作しません。

ohter 権限で実行される環境においては、パーミッションを変更することで動作する場合が多いです。 基本的に、other 権限で CGI が実行される場合には、ログファイルなどのような CGI が書き込むファイルは、other に対して書き込み権限が必要となります。 また、CGI がファイルを自動生成する場合には、格納ディレクトリ自体に、other に対して書き込み権限が必要となります。

ご利用のサーバー環境にもよりますが、一例として、

とすると動作することがあります。なお、格納ディレクトリのパーミッションは other に書き込み権限があっても「706」では動作しませんのでご注意ください。

Windows サーバでも利用できますか?

当サイトで配布している CGI は、UNIX サーバを前提に作成されております。 そのため、Windows サーバでは動作しない場合がありますので、ご注意下さい。 特に、WWW サーバソフトとして IIS が採用されている場合には、動作いたしません。 Apache for Windows をご採用の場合には、ほとんどの CGI が動作しますが、保証の限りではございませんので、ご了承下さい。