【02: CGI利用の準備】
SVシリーズでは、デフォルト設定としてCGI専用ディレクトリである /www/cgi-bin ディレクトリが用意されており、その他のディレクトリではCGIの実行はできなくなっています。 初期状態のRV3シリーズでは、/www/cgi-bin ディレクトリへCGIを設置するだけで、すぐにCGIを動作させることができますが、 /www/cgi-bin ディレクトリ以外のwebコンテンツ内で、CGIの設置が行いたい場合は、「.htaccess ファイルでの設定」もしくは「httpd.conf ファイルでの設定」のいずれかの編集により、CGI実行許可の設定が可能となります。 |
サブホストドメインの場合のCGI専用ディレクトリは /home/サブホスト管理者ユーザID/www/cgi-bin になります。 例えばサブホスト管理者ユーザIDが「subhost」である場合は、/home/subhost/www/cgi-bin となります。 |
■.htaccess ファイルでの設定 |
以下の内容が記述された .htaccess (先頭のドットに注意してください) というファイルを作成し、ドキュメントルート(/www/htdocs)へASCIIモードでアップロードします。 この作業を行うことで、ドキュメントルート(/www/htdocs)以下のどのディレクトリでもCGIを実行することができます。 なお、サブホストドメインで同様にどのディレクトリでもCGIを実行できるようにするためには、メインドメインの場合と同様に以下の内容の .htaccess ファイルを作成し、サブホストドメインのドキュメントルート(/home/サブホスト管理者ユーザID/www/サブホストドメイン)へASCIIモードでアップロードしてください |
httpd.conf ファイル編集 Options +ExecCGI AddHandler cgi-script cgi AddType text/html cgi |
05.SSI の設定 も同時に行う場合は、以下の .htaccess ファイルを作成してください。 |
Options +Includes +ExecCGI AddType text/html .shtml AddType text/html cgi AddHandler server-parsed .shtml AddHandler cgi-script cgi |
■httpd.conf ファイルでの設定 |
Webサーバの設定ファイルである httpd.confファイル(/www/conf/httpd.conf) に以下の設定を行うことで、ドキュメントルートディレクトリ(/www/htdocs) 以下のどのディレクトリでもCGIを実行することができます。 |
1) httpd.conf ファイルの権限設定 httpd.conf ファイルをFTPで編集できるようにするために、以下のコマンドを実行します。 |
% chmod g+w /www/conf/httpd.conf |
2) httpd.conf ファイルの修正 httpd.conf ファイルの以下の3個所を修正します。 |
317行目付近 [修正前] Options Indexes FollowSymLinks MultiViews |
[修正後] Options Indexes FollowSymLinks MultiViews ExecCGI |
05.SSI の設定 も同時に行う場合は、以下のように修正してください。 |
[修正後] Options Indexes FollowSymLinks MultiViews ExecCGI Includes |
365行目付近 [修正前] <Directory /home/*/www> AllowOverride All Options Indexes MultiViews SymLinksIfOwnerMatch IncludesNoExec </Directory> |
[修正後] <Directory /home/*/www> AllowOverride All Options Indexes MultiViews SymLinksIfOwnerMatch ExecCGI </Directory> |
05.SSI の設定 も同時に行う場合は、以下のように修正してください。 |
<Directory /home/*/www> AllowOverride All Options Indexes MultiViews SymLinksIfOwnerMatch ExecCGI Includes </Directory> |
799行目付近 [修正前] #AddHandler cgi-script .cgi |
[修正後] AddHandler cgi-script .cgi |
Apache (Web サーバ) の再起動 以下のコマンドを実行し、 01:サーバの再起動を行います。 |
% restart_apache |
この再起動を行う事で、編集したhttpd.confファイルがサーバに反映され、webディレクトリ内でのCGI実行が可能になります。 |