Mac OS X 10.5.5でユーザごとのCGI設定
以下、すべて10.5.5でのお話し。
ネットをうろうろしている限り、httpd.confの場所は、
OSのバージョンによって異なるのかもしれない
(/private/etc/httpdとか/etc/httpdとか)。
前提知識
▼apacheの起動/停止
りんごマークメニューの[システム環境設定]-[共有]-[Web共有]が
apacheを表すようだ。
このチェックボックスをONで起動、OFFで停止。
▼ドキュメントルート
/Library/WebServer/Documents
ここにファイル、例えばsample.htmlを置くと、
http://xxx.xxx.xxx.xxx/sample.html
で見れる。
▼ルートcgi-bin
/Library/WebServer/CGI-Executables
ここにファイル、例えばprintenv.cgiを置くと、
http://xxx.xxx.xxx.xxx/cgi-bin/printenv.cgi
で見られる。
デフォルトでは拡張子.cgiのみ許される設定。
この設定は/private/etc/apache2/httpd.confに書かれている。
▼ユーザルート
/Users/{ユーザ名}/Sites
例えば、ユーザ名がpenguinwatcherなら
/Users/penguinwatcher/Sites
ここにファイル、例えばsample.htmlを置くと、
http://xxx.xxx.xxx.xxx/~penguinwatcher/sample.html
で見れる。
ユーザごとのCGI設定
httpd.confは
/private/etc/apache2
に存在する。
ただし、ユーザごとの設定はさらにこのディレクトリ内の
usersディレクトリで行うようだ。
ユーザ名がpenguinwatcherの場合、
/private/etc/apache2/users/penguinwatcher.conf
というコンフィグファイルがある。
http://xxx.xxx.xxx.xxx/~penguinwatcher/cgi-bin/printenv.pl
のようにユーザルート配下のURLでcgiを配置したい場合
かつ
/Users/penguinwatcher/Sites/cgi-bin/printenv.pl
のようにcgiルートをユーザルート配下としたい場合、
/private/etc/apache2/users/penguinwatcher.conf
に以下のように付け加える。
AllowOverride FileInfo AuthConfig Limit
Options +ExecCGI
AddHandler cgi-script .cgi .pl .hs