Apache HTTP サーバ バージョン 2.0

Apache > HTTP サーバ > ドキュメンテーション > バージョン 2.0 > モジュール

# Apache モジュール mod_userdir

説明: | ユーザ専用のディレクトリを提供
ステータス: | Base
モジュール識別子: | userdir_module
ソースファイル: | mod_userdir.c

### 概要

このモジュールは、 `http://example.com/~user/` 構文を使ってユーザ専用ディレクトリにアクセスできるようにします。

### ディレクティブ

### 参照

- URL から ファイルシステムへのマッピング
- public_html チュートリアル

## UserDir ディレクティブ

説明: | ユーザ専用ディレクトリの位置
構文: | UserDir directory-filename
デフォルト: | `UserDir public_html`
コンテキスト: | サーバ設定ファイル, バーチャルホスト
ステータス: | Base
モジュール: | mod_userdir

`UserDir` ディレクティブは、 ユーザのドキュメントへのリクエストを受けた時に使う ユーザのホームディレクトリ中の、実際のディレクトリを 設定します。 directory-filename には次のどれかを指定します:

- ディレクトリ名か下に示すようなパターン。
- `disabled` キーワード。 `enabled` キーワード (下記参照) で明示的に 指定されたユーザ以外の 全てのユーザ名-ディレクトリ変換を しないようにします。
- `disabled` キーワードと、スペース区切りのユーザ名リスト。 このリスト中に含まれるユーザ名に対しては、たとえ `enabled` 節にあったとしても、 決してディレクトリ変換は行われません。
- `enebled` キーワードとスペース区切りのユーザ名リスト。 全体では変換が無効になっていたといたとしても、 これらのユーザ名にはディレクトリ変換が行われます。 ただし、`disabled` 節にもあれば変換はされません。

もし `enabled` も `disabled` キーワードも `UserDir` に現われていなければ、 引数はファイル名パターンとして扱われ、 名前からディレクトリへの変換の指定を行なう時に使われます。 `http://www.foo.com/~bob/one/two.html` へのリクエストは次のように変換されます:

UserDir ディレクティブ | 変換後のパス
--- | ---
UserDir public_html | ~bob/public_html/one/two.html
UserDir /usr/web | /usr/web/bob/one/two.html
UserDir /home/*/www | /home/bob/www/one/two.html

次のディレクティブはクライアントに対してリダイレクトを 送信します:

UserDir ディレクティブ | 変換後のパス
--- | ---
UserDir http://www.foo.com/users | http://www.foo.com/users/bob/one/two.html
UserDir http://www.foo.com/*/usr | http://www.foo.com/bob/usr/one/two.html
UserDir http://www.foo.com/~*/ | http://www.foo.com/~bob/one/two.html

このディレクティブを使うときは注意してください; "`UserDir ./`" は "`/~root`" から "`/`" へマップしますが、 これは望ましい動作ではないでしょう。 "`UserDir disabled root`" 宣言を 設定の中に含めておくことを強くお薦めします。 追加情報に `Directory` ディレクティブや セキュリティ Tips のページもご覧下さい。

追加の例:

少数のユーザのみが `UserDir` ディレクトリを利用し、それ以外には利用させたくない場合は 次を使いましょう:

`UserDir disabled
UserDir enabled user1 user2 user3`

大部分のユーザは `UserDir` ディレクトリを利用するけれど、 少数の人は不許可にしたい場合は、次を使いましょう:

`UserDir enabled
UserDir disabled user4 user5 user6`

### 参照

- public_html チュートリアル