コンテンツを入れる場所を変える方法
Modified: 24 February 2002
コンテンツを入れる場所を変える実験をしてみました。
Webページのトップページの場所を指定する
別のディレクトリをDocumentRootの下のディレクトリとして扱いたい
ユーザごとにそのユーザディレクトリ内を参照させたい
Webページのトップページの場所を指定する
DocumentRoot で指定します。
デフォルトでは、以下のようになっています。
DocumentRoot /usr/local/apache/htdocs Webminでは、以下のように行います。
「Servers」から「Apache Webserver」をクリックし、以下のように、「Virtual Servers」の「Default Server」をクリックします。
「Document Options」をクリックします。
開いたページの「Document root directory」のテキストボックスにPATHを入力し、「Save」ボタンを押します。
別のディレクトリをDocumentRootの下のディレクトリとして扱いたい
Alias で指定できます。
Alias /products /www/products
上記の指定をすれば、以下のURLで参照できます。
http://p5100.tomo.ac/products
"products" は、実際には、"/www/products" というディレクトリが参照されます。
Webページのコンテンツは、必ずしも、DocumentRootのディレクトリ以下にコピーする必要はないということです。
まず、"http.conf" の "UserDir" を確認します。
UserDir public_html
DirectoryIndex index.html
ユーザのホームディレクトリに、"UserDir"で指定した、"public_html" という名前のディレクトリを作れば、以下のURLで参照できます。
http://p5100.tomo.ac/~tomo
これは、"tomo" というユーザのホームディレクトリの "public_html" (UserDirで指定したファイル) というディレクトリの "index.html" (DirectoryIndexで指定したファイル) を表示します。
以下のように、Forbidden になってしまうことがあります。
Forbidden
You don't have permission to access / on this server.
Apache/1.3.9 Server at p5100.tomo.ac Port 80
原因
これは、参照すべきディレクトリかファイルのアクセス権がないときに出ます。
対策
Webサーバからは、"nobody" というユーザで参照しますから、以下のように、nobody ユーザになって、エラーになったディレクトリやファイルをアクセスしてみましょう。
# su nobody
$