我正在尝试使用Github Webhooks让Github命中我的服务器上的一个URL,并在命中时立即让服务器拉取新提交的项目。我有一个包含以下内容的php脚本:
<?php `git pull git@github.com:my-user/myrepo.git`; ?>
然而,当脚本以用户
apache
身份运行时,我尝试了以下操作:chown -R apache:apache .
"并且它仍然显示“权限被拒绝”的错误。所以我尝试编辑sudoers文件并更改以下内容:"
Host_Alias LOCAL=127.0.0.1
apache LOCAL=NOPASSWD: /var/www/html/git-hook.php
而且这仍然不起作用。
如何实现这一点?如果我运行:
sudo php git-hook.php
它的工作正常,所以PHP文件中的代码没有问题。我只是想让它自动化。
有什么想法吗?
编辑:
我还忘了提到。我甚至创建了一个文件夹/home/apache/.ssh,并复制了用于git pull的公钥,但结果相同。
apache LOCAL=NOPASSWD: /usr/bin/git
- 允许apache
用户通过sudo
运行的命令吗? - didsterALL = NOPASSWD: ALL
已生效。 - Peter