2.那末咱们需求设置的就是两个中央:
①git名目的webhook设置:
普通正在咱们托管代码的平台,正在名目设置里城市有一项webhook设置,外面普通只有一条内容,那就是url的设置,这里我设置的是http://www.xxxxx.com/webhook.php
(很显著,我正在网站的根目次扔了一个webhook.php文件,那末每一次我向远端推送代码的时分,我网站的webhook.php文件城市被拜访到)
②效劳器端(代码运转地位)的钩子文件(webhook.php)设置:
$co妹妹and = 'cd 代码地位'; $output = shell_exec($co妹妹and); $co妹妹and = 'git pull'; $output = shell_exec($co妹妹and); print $output;
我这里就是简略的两句,先cd饬令进入到相应目次,而后执行git pull饬令
次要就是shell_exec()函数的应用,这个是php执行饬令行的函数,同窗们能够本人baidu详细引见
这里要特地阐明的是,我以前执行shell_exec()饬令的时分,效劳器会无呼应,卡死,于是我用一句
$output = shell_exec('ls'); print_r($output);
指令测试,发现也超时,很希奇,以是不断放置来着,也想没有明确怎样回事,究竟结果就三五行代码,也没有晓得甚么缘由让它不断申请超时。起初过了两个月我想会没有会是当初print的字符串编码成绩?于是便有了上面的几句代码:
$encode = mb_detect_encoding($output, array('ASCII','GB2312','GBK','UTF-8')); $trans = iconv( $encode, "UTF-8",$output); print $trans;
而后居然能够执行了。。。我也想没有起来以前究竟是甚么缘由shell_exec()不断超时,又遇到的小同伴能够尝尝没有打印前往内容,或许将打印内容编码解决一下。不外置信遇到这个恶心成绩的小同伴仍是多数。
更多PHP相干常识,请拜访PHP教程!
以上就是行使webhook使php名目主动部署的具体内容,更多请存眷资源魔其它相干文章!
标签: php php开发教程 php开发资料 php开发自学
抱歉,评论功能暂时关闭!