![Apache:我希望每个用户都有自己的 DocumentRoot,例如 ~/www](https://linux22.com/image/523142/Apache%EF%BC%9A%E6%88%91%E5%B8%8C%E6%9C%9B%E6%AF%8F%E4%B8%AA%E7%94%A8%E6%88%B7%E9%83%BD%E6%9C%89%E8%87%AA%E5%B7%B1%E7%9A%84%20DocumentRoot%EF%BC%8C%E4%BE%8B%E5%A6%82%20~%2Fwww.png)
我想配置 Apache2,以便每个用户都有自己的 DocumentRoot,而不是/var/www
将文件放入/home/john/www
(john 是一个简单的用户名)
答案1
Apache 手册已经涵盖了这一点。基本上,您需要在服务器配置中启用一个模块,设置本地路径,然后就大功告成了。对于您来说,本地路径应该是这样的:
UserDir /home
这会自动扩展为/home/username
。
不过,我认为使用public_html
文件夹(或类似的东西)更好。这允许你的用户存储不是可通过网络访问。
答案2
您需要 Apache 的 mod_userdir 模块:
http://httpd.apache.org/docs/2.2/mod/mod_userdir.html
具体来说,在现有的配置文件中搜索“UserDir”(可能在主 httpd.conf 中,在 extra/httpd-userdir.conf 中,或者在其他文件中,具体取决于您获取 Apache 的位置。)取消注释并将其设置为:
UserDir www
记得启用 mod_userdir 模块(或者在 httpd.conf 中取消注释“Include conf/extra/httpd-userdir.conf”,以适用者为准)以允许加载该模块!