Apache 配置

Apache 配置

我是 Ubuntu 新手,我正在配置 Apache 从我的主目录站点目录读取根文档

我编辑了 / 下的(默认)文件etc/apache2/可用站点 读自/home/用户名

当我重新启动 Apache 时,它​​会从我的主目录读取其默认页面

我试图通过让以下用户访问 Apache localhosthttp://localhost/~user1/

我怎样才能做到这一点?

答案1

此功能可通过启用 Apacheuserdir模块具有:

sudo a2enmod userdir

下一步是配置 Apache 如何处理 URI。

一些例子:

  • http://localhost/~user1/site1如果你希望从目录加载URL /home/user1/site1,则需要使用

    UserDir ./
    
  • http://localhost/~user1/site1如果你希望从目录加载URL /home/user1/sites/site1,则需要使用

    UserDir sites
    

要添加配置,并假设您使用的是 Apache 2.2,请创建以下文件 /etc/apache2/conf.d/userdir.conf并向其中添加以下内容:

# This is just a safety measure to make sure the root user isn't used.
UserDir disabled root

# Swap the following line with whatever configuration you require.
UserDir sites

# If you chose "UserDir ./" instead of "UserDir sites",
# remove the "sites/" part in the next line
<Directory /home/*/sites/>
    Order allow, deny
    Allow from all
</Directory>

完成后,您需要重新启动 Apache:

sudo apache2ctl restart

答案2

您可以为每个人定义virtualhost不同的servernamedocument root但您应该/etc/hosts为每个用户编辑。例如: Virtualhost *:80 Servername : person 1 Document root : /home/person1 您还可以将home目录定义为document root,每个用户都可以找到他/她的目录。

注意你应该给予www-data他们房屋的所有权以及做他们员工的许可。

附言:为什么你不尝试一下vsftpd你的方案?!那样会更好。

相关内容