【发布时间】:2012-03-11 08:59:40
【问题描述】:
我正在尝试Perfect Workflow, with Git, GitHub, and SSH,除了从 php 运行命令 git pull 之外,我已经完成了所有设置。
当我运行exec('git pull') 时,我得到:
无法创建目录“/.ssh”。主机密钥验证失败。 致命:远端意外挂断
如果我在终端(以 root 身份)运行它,它工作得很好,但我需要这个钩子从 Post-Receive URL (Github) 工作。
如果我这样做exec('whoami'),我会得到apache。
这是来自 mediatemple 和 CentOS 的 (dv)。
【问题讨论】:
-
您需要使 git 存储库的用户与运行 Web 应用程序的用户相同。
-
apache用户的主目录设置为什么?ssh正在获取机器的根目录作为主目录,它不能作为apache用户在那里写入。 (root显然可以,这就是它起作用的原因) -
感谢大家的回复。本:我该怎么做?布赖恩:我不知道。我不是系统/管理员。我在 CentOS 的 mediatemple (dv) 上运行
-
@AFRC 看看我的回答,我提供了一些细节。希望这足以让您滚动。
-
在这里回答 --> serverfault.com/questions/362012/…
标签: php linux git permissions ssh