Mac OS X 10.5 ( Leopard ) でCGIを使用する
Web共有で公開されるサイトフォルダでCGIを使用するには、httpd.conf もしくは [ユーザ名].conf のどちらかを編集する必要があります。
今回は、[ユーザ名].conf を編集する方法を試しました。
また、Mac OS X 10.5 ( Leopard )の注意点として、以前のhttpdディレクトリがapache2ディレクトリに変更されています。
以前 : | /private/etc/httpd/ | |
10.5 ( Leopard ) : | /private/etc/apache2/ |
/private/etc/apache2/user/[ユーザ名].confの編集
デスクトップに一度 [ユーザ名].confをコピーし、これを編集して元の場所に戻します。
ターミナルで次のコマンドを実行します。
cp /etc/apache2/users/[ユーザ名].conf ./Desktop/
デスクトップにコピーされた[ユーザ名].confをテキストエディタ(今回はJeditを使用)で開き、
<Directory "/Library/WebServer/CGI-Executables">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
を以下の内容に変更して保存します。
保存は改行コードを必ずLFにしてください。改行コードを間違えるとApacheが起動しなくなります。
<Directory "/Users/[ユーザ名]/Sites/">
AddType text/html .shtml
AddHandler server-parsed .shtml
AddHandler cgi-script .cgi
Options Indexes MultiViews Includes ExecCGI
AllowOverride None
Order allow,deny
Allow from all
</Directory>
次にオリジナルの[ユーザ名].confのバックアップをとるため、ターミナルで一度/private/etc/apache2/users/のディレクトリに移動し、
cd /etc/apache2/users/
[ユーザ名].confを[ユーザ名].conf.orgの名前で同じディレクトリにコピーします。
sudo cp ./[ユーザ名].conf ./[ユーザ名].conf.org
この際、パスワードを聞かれるので、自分のパスワードを入力します。
最後にApache2の再起動のため、システム環境設定の共有設定画面でWeb共有を → オフ → オンします。
これで、CGIが使用可能になります。(なるはず…)
パーミッション
注)CGIファイルを実行するには、パーミッションの変更が必要です。
例) ターミナルで
chmod 705 [ファイル名] chmod 707 [ディレクトリ名]
など
今回は、以下のサイトを参考にさせていただきました。有り難うございます。
http://www.kiwi-us.com/~mizusawa/penguin/html_hint/osXDarwinTips.shtml#cgi
http://www.futomi.com/lecture/macosx/index.html