マソム自宅サーバ構築の記録
- ■
-
CGIの設置
-
作成日:05/10/19
更新日:11/01/29
CGIプログラム内のパス
perlへのパスが合っていることを確認します。大抵は/usr/bin/perl か
usr/local/bin/perl です。
CGIプログラムの1行目に以下のような記述があります。
#!/usr/bin/perl
それと perl のパスが同じならOKです。パスは以下のようにして確認できます。
$ which perl
/usr/bin/perl
違っていた時は、
CGIプログラムの1行目を変更して同じパスにしておきます。
環境の設定
任意のディレクトリでCGIを使うには、そのディレクトリでのCGI実行をApacheが許可する必要があります。
Apache設定ファイルhttpd.confのAllowOverrideディレクティブにOptionsを指定しておきます。以下は例です。
<Directory "ドキュメントルートのディレクトリパス">
AllowOverride FileInfo AuthConfig Limit Options
Options SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
.htaccessファイルの設定
.htaccessファイルに以下を追加します。
Options +ExecCGI
FTPサーバがvsftpdの時
FTPでCGIファイルをアップロードすると思いますが、FTPサーバがvsftpdの時は設定ファイル
vsftpd.confでaschiiモードの転送を可能にするようにしておく必要があります。そうしないと改行コードの処理で問題が起こり、Internal Server Errorになります。
ascii_upload_enable=YES
ascii_download_enable=YES
CGIファイルの設置
CGIファイルには実行権限を与えておく必要があります。
$ chmod 755 xxxxxxx.cgi
紆余曲折Tips