Git WebHook不会拉(PHP)

1 php git webhooks

我有一个PHP文件,hook.php看起来像这样:

<?php `cd .. && git pull`;

该文件位于中/var/www/oliverash.me/site/。但是,需要提取的git存储库为/var/www/oliverash.me/./site是Apache用作文档根目录的文件夹。

当我在浏览器中运行文件时,它似乎并没有拉存储库。

我也尝试回显结果,但是页面空白。

<?php echo `cd .. && git pull`;

Jon*_*Jon 5

我无法发表评论以回复您,但我假设您正在运行* nix系统。如果您的apache / php守护进程没有访问权限,您将获得拒绝权限.git/。您可以.git/递归更改目录的所有者/组。或者执行a chmod -R o+rw .git/*授予所有人(即不是所有者而不是组)在git目录中进行读写的访问权限,这应该清除您得到的权限错误。

编辑 只是重新阅读问题,所以可能不需要采取以下措施,但以防万一。

但是,这样做时,请记住,任何有权访问您的服务器的人都可以去http://myurl/.git/etc进行访问。因此,为安全起见,我将添加如下.htaccess文件:

order deny, allow
deny from all
Run Code Online (Sandbox Code Playgroud)

.git目录中,这样apache将拒绝从Web浏览器访问其中的所有内容。