webhook php 文件从终端工作但不是从 bitbucket

webhook php file work from terminal but not from bitbucket

我正在使用 bitbucket 托管我的 git 存储库,该存储库目前拥有一个测试网站,我创建了一个 bitbucket webhook,因此当我推送到 bitbucket 存储库时,更改会显示出来就像在 digitalOcean VPS 上一样,换句话说......当 bitbucket 收到推送时,它会调用 webhook php 文件,并且 php 文件有一个 shell 从 github..

中提取的脚本

钩子文件

Hook path : /var/www/html/hook.php

站点文件夹

Site path : /var/www/html/webhooks/

hook.php 文件看起来像这样

<?php 
echo "________PHP_AUTO_PULL________"; 

$output = shell_exec('git -C ./webhooks/ pull https://userName:password@bitbucket.org/userName/repo.git master'); 
echo "<pre>$output</pre>"; 

?>

当我在终端中执行此操作时

php hook.php

它正常工作,它拉..

但问题是,webhooks 只显示这个回复

________PHP_AUTO_PULL________

说明没有拉取,是的我查了,没有拉取,如何让钩子正常执行文件?

这些列表中提供了权限和所有者

列表 /var/www/html/

drwxrwxr-x 3 www-data www-data 4096 Mar 28 09:21 ./
drwxrwxr-x 3 www-data www-data 4096 Mar  3 16:49 ../
-rwxrwxrwx 1 www-data root      200 Mar 28 09:05 hook.php*
-rw-rw-r-- 1 www-data www-data   20 Mar  3 16:49 info.php
drwxr-xr-x 3 root     root     4096 Mar 28 09:03 webhooks/

列出 /var/www/html/webhooks/

drwxr-xr-x 3 root     root     4096 Mar 28 09:03 ./
drwxrwxr-x 3 www-data www-data 4096 Mar 28 09:21 ../
-rw-r--r-- 1 root     root      295 Mar 27 15:13 content.html
drwxr-xr-x 8 root     root     4096 Mar 28 09:03 .git/
-rw-r--r-- 1 root     root      444 Mar 27 15:13 index.html
-rw-r--r-- 1 root     root      963 Mar 27 15:13 menu_1.html
-rw-r--r-- 1 root     root       13 Mar 28 09:03 number.txt

我的网络服务器是 nginx 知道为什么它可以从终端运行,但 bitbucket 不能让它运行吗?

我已经设法解决了它,使用:

echo shell_exec("/usr/bin/git pull https://userName:password@bitbucket.org/userName/repo.git master 2>&1");

2>&1 部分帮助我查看有关文件夹权限的错误,我使用了

chown -R www-data .git/

并且工作正常。