WWW サーバにアクセスされた時、最初にどこを見に行くかを設定します。
なお、ここの記述は RedHat Linux Sparc 上での httpd の制御を基にしています。 FreeBSD ではありませんので注意して下さい。
おおまかに言って、決めるべきことはなどです。例えば、WWW サーバの名前が hogehoge.ac.jp、 ユーザの名前を herohero としましょう。 上の 1,2 の場合は次の URL 指定に相当します。
- WWW サーバの名前もしくは IP アドレスのみ指定された時に 見に行く場所
- WWW サーバの名前もしくは IP アドレスに続き、 ユーザの名前のみ指定された時に見に行く場所
- ファイルの名前が省略された場合に見に行くファイル
本当は、それぞれファイルまで指定しないといけないのですが、 3. でデフォルトで見に行くべきファイルが指定されていれば それを見に行ったのと同等になります。 例えば、3. で index.html を指定しておくと、 上の2つの URL 指定で
- http://hogehoge.ac.jp/
- http://hogehoge.ac.jp/~herohero/
を指定したのと同等の結果が得られます。
- http://hogehoge.ac.jp/index.html
- http://hogehoge.ac.jp/~herohero/index.html
上の、1,2,3 を指定するファイルは /etc/httpd/conf/srm.conf でした。 FreeBSD の場合はファイル名(srm.conf) は同じでも場所(絶対パス)が 違うかも知れません。 さて、1,2,3 の指定の仕方を述べます。
srm.conf
DocumentRoot /home/httpd/html
UserDir public_html
DirectoryIndex index.html index.shtml
DocumentRoot は 1. を指定します。
UserDir は 2. を指定します。
DirectoryIndex は 3. を指定します。UserDir に関して:
上の例の場合は、~/public_html を指定したことになります。 こうしておくと、
http://hogehoge.ac.jp/~herohero/public_html/index.html
と指定すべき所を
http://hogehoge.ac.jp/~herohero/index.html
とちょっと楽できます。 もし各ユーザのホームディレクトリ以外を指定したかったら、 絶対パスで書いておけば大丈夫です。例えば、
UserDir /home/httpd/html
としておくと、
http://hogehoge.ac.jp/home/httpd/html/herohero/index.html
と指定すべき所を
http://hogehoge.ac.jp/~herohero/index.html
で良い様に設定したことになります。
後は、httpd を起ち上げ直します。
# killall -HUP httpd