【发布时间】:2013-05-28 17:03:59
【问题描述】:
我使用以下代码创建了一个 php 文件来获取托管在 github 上的存储库中的任何更改:
<?php
`git pull`;
?>
我在我的 github 设置中提供了这个 php 脚本(托管在我的服务器上)的 url 作为服务挂钩 url。因此,每当我将某些内容推送到我的 github 存储库时,它都应该向这个 php 文件发出 post 请求。但是,这似乎不起作用。
github 帮助页面说他们向相关 url 发送了一个 post 请求,其中包含一些 paylod。那么脚本是如何执行的呢?
当我在 ssh 进入我的站点后从 bash 提示符执行 git pull 时,它会提取所有更改。
此脚本的文件权限当前设置为 755。
我需要对 php 进行哪些更改才能将此文件作为 shell 脚本执行?
编辑 - 我也尝试像这样更改相应文件夹的所有权:
chown -R apache:apache Test
因此,当对 url 发出 post 请求时,脚本会以我猜的 www-data 用户身份执行,因此脚本可以执行。但是当我尝试这样做时出现错误:
chown: `apache:apache': invalid group
【问题讨论】:
-
我是否需要为我的问题添加更多细节。非常感谢任何帮助。
标签: php shell-exec git-pull