Mac OS X (UNIX-based)

Apache (Web共有)

作成:2001.09.20/更新:2001.09.21

httpd.confを読む!!

Web共有の開始によってMacOSXのWebサーバーである「Apache」が起動できた。しかしユーザーのホームページはどこだろう?どのディレクトリにファイルを置けば良いのだろうか?この問いは設定ファイルである「httpd.conf」を読むことで解決するはずだ。


Apacheのルートディレクトリはどこだ!!

Webサーバー「Apache」のルートディレクトリは「DocumentRoot」指示子で指定する。

DocumentRoot "/Library/WebServer/Documents"

上記から、ブラウザから「http://localhost/」で表示されるドキュメントは「/Library/WebServer/Documents」に置いたものということが分かる。必要に応じて「/Library/WebServer/Documents」以下のファイルを置き換えることですぐにWebサーバーを公開することが出来る。


ユーザーディレクトリをさがせ!!

ユーザーディレクトリは「UserDir」で指定する。

<IfModule mod_userdir.c>
UserDir "Sites"
</IfModule>

ユーザーのホームディレクトリが「/Users/ユーザー名」の場合、「/Users/ユーザー名/Sites」にファイルを置くことで、ブラウザから「http://localhost/~ユーザー名/」でアクセスしたときにそのファイルが表示される。


CGIを実行する!!

「Apache」にてCGIの実行を許可する方法はいくつかあるが、「ScriptAlias」を使ったCGIディレクトリのマッピングの方法を使ってみる。標準でルートディレクトリの「/Library/WebServer/CGI-Executables/」にCGI実行の設定がされている。

ScriptAlias /cgi-bin/ "/Library/WebServer/CGI-Executables/"

「/Library/WebServer/CGI-Executables/」に「test-cgi」というファイルでCGIスクリプトを置いてあるとすると、ブラウザで以下のように指定することでCGIの実行結果を表示することが出来る。

http://localhost/cgi-bin/test-cgi


テストCGIを実行してみる!!

「/Library/WebServer/CGI-Executables/」には「test-cgi」というCGI環境変数を出力する簡単なスクリプトが用意されている。ファイルに実行権がついていないのでそのままでは実行されないので、パーミッションを変更して実行できるようにする必要がある。

% cd /Library/WebServer/CGI-Executables
% chmod 755 test-cgi

CGIを実行してみる。

http://localhost/cgi-bin/test-cgi

 

 

MainMenuへ戻る