使用php处理github发送过来的请求,测试正常。在调用脚本或使用exec()执行命令总是不能成功。
<code>// 判断签名是否匹配
if ($hash === $payloadHash) {
// 调用shell
// file_put_contents('/var/www/niucunhui.io/auto/test.txt', '程序走到这里了');
exec('cd /var/www/niucunhui.io/auto/ && git pull');
}
</code>file_put_contents可以写入内容,证明签名是匹配成功的。在服务器单独执行脚本,也是可以pull代码。
ZYCH自由策划企业网站管理系统是一个智能ASP网站管理程序,是基于自由策划企业网站系列的升级版,结合以往版本的功能优势,解决了频道模板不能自由添加删减的问题,系统开发代码编写工整,方便读懂,系统采用程序模板分离式开发。方便制作模板后台模板切换,模板采用动态编写,此模板方式写入快,代码编写自由,即能满足直接使用也能满足二次开发。全新的后台界面,不管是在程序的内部结构还是界面风格及CSS上都做了大量
1
脚本如下:
<code>#!/bin/bash WEB_PATH='/var/www/niucunhui.io/sql-optimize-referance/' WEB_USER='www' WEB_USERGROUP='www' echo "Start deployment" cd $WEB_PATH echo "pulling source code..." git reset --hard origin/master git clean -f git pull git checkout master echo "changing permissions..." chown -R $WEB_USER:$WEB_USERGROUP $WEB_PATH echo "Finished." </code>
单独写一个PHP程序 exec()命令也是可以执行的。
请问,还有可能是那里的问题?
服务器版本 CentOS 6.5
PHP版本 5.6.15
使用php处理github发送过来的请求,测试正常。在调用脚本或使用exec()执行命令总是不能成功。
<code>// 判断签名是否匹配
if ($hash === $payloadHash) {
// 调用shell
// file_put_contents('/var/www/niucunhui.io/auto/test.txt', '程序走到这里了');
exec('cd /var/www/niucunhui.io/auto/ && git pull');
}
</code>file_put_contents可以写入内容,证明签名是匹配成功的。在服务器单独执行脚本,也是可以pull代码。
脚本如下:
<code>#!/bin/bash WEB_PATH='/var/www/niucunhui.io/sql-optimize-referance/' WEB_USER='www' WEB_USERGROUP='www' echo "Start deployment" cd $WEB_PATH echo "pulling source code..." git reset --hard origin/master git clean -f git pull git checkout master echo "changing permissions..." chown -R $WEB_USER:$WEB_USERGROUP $WEB_PATH echo "Finished." </code>
单独写一个PHP程序 exec()命令也是可以执行的。
请问,还有可能是那里的问题?
服务器版本 CentOS 6.5
PHP版本 5.6.15
https://zhuzhenyu.org/2016/01/03/php-github-php/
git命令需要写全路径
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号