<-
Apache HTTP 服务器 2.4 > 每用户Web目录(public_html)

每用户Web目录

在具有多个用户的系统上,可以使用UserDir指令允许每个用户在其主目录中拥有一个网站。URL的访问者http://example.com/~username/将从指令“ username”指定的子目录中获得用户“ ” 的主目录中的内容UserDir

请注意,默认情况下, 启用对这些目录的访问。您可以在使用时UserDir通过取消注释以下行来启用访问:

#Include conf/extra/httpd-userdir.conf

在默认配置文件中conf/httpd.conf,并httpd-userdir.conf 根据需要调整文件,或<Directory>在主配置文件中的块中包含适当的指令 。

支持Apache!

也可以看看

最佳

每用户Web目录

最佳

使用UserDir设置文件路径

UserDir 伪指令指定一个目录,每个用户的内容将从该目录中加载。该指令可以采用几种不同的形式。

如果给出的路径不是以斜杠开头,则假定该路径是相对于指定用户主目录的目录路径。给定此配置:

UserDir public_html

URL http://example.com/~rbowen/file.html将被转换为文件路径 /home/rbowen/public_html/file.html

如果给出以斜杠开头的路径,则将使用该路径加上指定的用户名来构建目录路径。给定此配置:

UserDir /var/html

URL http://example.com/~rbowen/file.html将被转换为文件路径/var/html/rbowen/file.html

如果提供的路径包含星号(*),则将使用星号替换为用户名的路径。给定此配置:

UserDir /var/www/*/docs

URL http://example.com/~rbowen/file.html将被转换为文件路径 /var/www/rbowen/docs/file.html

也可以设置多个目录或目录路径。

UserDir public_html /var/html

对于URL http://example.com/~rbowen/file.html,Apache将搜索~rbowen。如果没有找到它,Apache会寻找rbowen/var/html。如果找到,则上述URL将被转换为文件路径 /var/html/rbowen/file.html

最佳

重定向到外部URL

UserDir指令可用于将用户目录请求重定向到外部URL。

UserDir http://example.org/users/*/

上面的示例会将的请求重定向 http://example.com/~bob/abc.htmlhttp://example.org/users/bob/abc.html

最佳

限制允许哪些用户使用此功能

使用UserDir文档中显示的语法,您可以限制允许哪些用户使用此功能:

UserDir disabled root jro fish

上面的配置将为所有用户启用该功能,但disabled语句中列出的用户除外。同样,您可以使用以下配置为除少数用户外的所有用户禁用该功能:

UserDir disabled
UserDir enabled rbowen krietz

有关UserDir 其他示例,请参见文档。

最佳

为每个用户启用一个cgi目录

为了给每个用户自己的cgi-bin目录,您可以使用<Directory> 指令来使用户主目录的特定子目录启用cgi。

<Directory "/home/*/public_html/cgi-bin/">
    Options ExecCGI
    SetHandler cgi-script
</Directory>

然后,假设将UserDir其设置为 public_html,则example.cgi 可以从该目录加载cgi程序,如下所示:

http://example.com/~rbowen/cgi-bin/example.cgi

最佳

允许用户更改配置

如果要允许用户在其Web空间中修改服务器配置,则将需要使用.htaccess文件进行这些更改。确保AllowOverride为您要允许用户修改的指令设置了足够的值。有关此工作原理的更多详细信息,请参见.htaccess教程

可用语言: zh  |  es  |  fr  |  ja  |  ko  |  TR 

最佳

注释

注意:
这不是“问答”部分。此处放置的评论应指向有关改进文档或服务器的建议,如果实施或被认为无效/偏离主题,我们的主持人可以将其删除。有关如何管理Apache HTTP Server的问题,应直接指向我们的IRC频道#httpd(位于Freenode上),或发送至我们的邮件列表
目前,此页面已禁用评论。