从WHM用户的帐户访问linux用户的public_html

时间:2012-05-16 08:27:33

标签: git apache vhosts whm

我有一个用户,我已经在我的服务器上设置为我所有git回购的所有者。我是通过ssh完成的,因此没有为该用户设置WHM acct。我将此用户命名为'git'。

在我的主域exmaple.com上,我创建了一个名为git.example.com的子域。

我希望这个指向/ home / example / subdomains / git的子域名改为指向/ home / git / public_html。

为什么我要这样做?好吧,我正在我的服务器上为我的git repos构建一个web界面,我认为将界面粘贴在'git'的public_html目录中是有用的,所以当我正在阅读时我不必费心权限通过界面写信给回购。

(也许有更好的方法可以做到这一点,不需要我搞乱权限?idk。)


我开始创建一个vhost包含在这里:
/usr/local/apache/conf/userdata/std/2/example/git.example.com/config.conf
在这个文件中我添加了DocumentRoot /home/git/public_html
然后我运行/scripts/ensure_vhost_includes --all-users将我的.conf滚动到httpd.conf。

当然,当我尝试访问git.example.com时,我现在得到403,因为我无法访问用户'git'的public_html目录。


我需要添加到config.conf中,以便能够访问用户'git'的public_html?


更新:我已经尝试了一些方法来实现这一点,没有人允许我在没有403错误的情况下访问子域:

  • 一位同事建议chgrp -R nobody /home/git/public_html,但这不起作用。
  • 我尝试将用户'git'添加到'nobody'组中,但这些组无法正常工作,并将用户'nobody'添加到组'git'组合中,这些组合也无效。 (没有人是apache使用的用户/组)
  • 我尝试在我的vhost include中添加为我的vhost设置用户/组与SuexecUserGroup和RUidGid,但这也不起作用。 (除了git git,我尝试了git nobody,没有人没人,也没有人为这些而烦恼但没有运气。)

    <IfModule !mod_disable_suexec.c>
        <IfModule !mod_ruid2.c>
            SuexecUserGroup git git
        </IfModule>
    </IfModule>
    <IfModule mod_ruid2.c>
        RUidGid git git
    </IfModule>
    
  • 我的虚拟主机建议我备份我的所有'git'用户数据,擦除帐户,然后通过ssh创建WHM而不是useradd的'git',然后恢复我的备份。看起来这是我唯一的选择。

0 个答案:

没有答案