This module allows user-specific directories to be accessed using the
http://example.com/~user/
syntax.
The
disabled
. This turns off
all username-to-directory translations except those
explicitly named with the enabled
keyword (see
below).disabled
followed by a
space-delimited list of usernames. Usernames that appear in
such a list will never have directory translation
performed, even if they appear in an enabled
clause.enabled
followed by a
space-delimited list of usernames. These usernames will have
directory translation performed even if a global disable is
in effect, but not if they also appear in a
disabled
clause.If neither the enabled
nor the
disabled
keywords appear in the
Userdir
directive, the argument is treated as a
filename pattern, and is used to turn the name into a directory
specification. A request for
http://www.foo.com/~bob/one/two.html
will be
translated to:
UserDir directive used | Translated path |
---|---|
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 |
The following directives will send redirects to the client:
UserDir directive used | Translated path |
---|---|
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 ./"
would map "/~root"
to
"/"
- which is probably undesirable. It is strongly
recommended that your configuration include a "UserDir
disabled root
" declaration. See also the Additional examples:
To allow a few users to have UserDir
directories, but
not anyone else, use the following:
To allow most users to have UserDir
directories, but
deny this to a few, use the following: