Webhook各类网站的自动化部署校验脚本-PHP版本

来源: WordPress导航主题    日期: 2022-9-6    标签:,     作者: WordPress导航主题   

我们记录一下 github、gitlab、gitee、coding 平台的php版接收webhook脚本

Table of Contents

github

<?php //网站目录 $www_file  = '/www/wwwroot/laoji.org/api'; //日志文件路径 $log_file = '/www/wwwroot/www.test.com/auto_hook.log'; // GitHub项目 Settings/Webhooks 中的 Secret $client_secret = "laoji.org";  //接收数据 $vaild_data = json_decode(file_get_contents('php://input'), true); //传递的签名 $vaild_signature = $_SERVER['HTTP_X_HUB_SIGNATURE'];   $hash = "sha1=".hash_hmac('sha1', $vaild_data, $client_secret ); if (strcmp($vaild_signature , $hash) == 0) {     // sign sucess     //执行shell命令并把返回信息写进日志     shell_exec("cd {$www_file}  &&  git pull  origin dev  >  {$log_file}  2>&1 ");   } 

gitlab

<?php //网站目录 $www_file  = '/www/wwwroot/laoji.org/api'; //日志文件路径 $log_file = '/www/wwwroot/www.test.com/auto_hook.log';      //作为接口传输的时候认证的密钥   $client_token = 'laoji.org';     //传递的token $vaild_token = $_SERVER['HTTP_X_GITLAB_TOKEN'];   //传递数据 $vaild_data = json_decode(file_get_contents("php://input"), true);   /* test token */ if ($vaild_token !== $client_token ) {     echo "error 403";     exit(); }  //若是dev分支且提交数大于0 if ($vaild_data['ref']=='refs/heads/dev' && $vaild_data['total_commits_count']>0) {    //执行shell命令并把返回信息写进日志    shell_exec("cd ".$www_file."  &&  git pull  origin dev  >  ".$log_file."  2>&1 ");   }         

gitee

<?php //网站目录 $www_file  = '/www/wwwroot/laoji.org/api'; //日志文件路径 $log_file = '/www/wwwroot/www.test.com/auto_hook.log'; // 码云WebHooks中配置的密码 $client_password = "laoji.org";  $vaild_data = json_decode(file_get_contents('php://input'), true);  // 判断密码 if ($vaild_data ['password'] === $client_password ) {             //执行shell命令并把返回信息写进日志     shell_exec("cd ".$www_file."  &&  git pull  origin dev  >  ".$log_file."  2>&1 "); }   

coding

<?php //网站目录 $www_file  = '/www/wwwroot/laoji.org/api'; //日志文件路径 $log_file = '/www/wwwroot/www.test.com/auto_hook.log'; // 码云WebHooks中配置的密码 $client_token = "laoji.org";  // 接收Coding post传递的参数 $vaild_data = file_get_contents('php://input'); // 从请求头中获取签名 $vaild_signature = $_SERVER['HTTP_X_CODING_SIGNATURE'];  // 进行签名解析 $sha1 = hash_hmac("sha1",$vaild_data,$client_token); $result_signature = 'sha1='. $sha1;  // 进行身份验证 if ($result_signature === $vaild_signature ) {     //执行shell命令并把返回信息写进日志     shell_exec("cd ".$www_file."  &&  git pull  origin dev  >  ".$log_file."  2>&1 "); } 

腾讯云限时秒杀【点击购买】

搬瓦工,CN2高速线路,1GB带宽,电信联通优化KVM,延迟低,速度快,建站稳定,搬瓦工BandwagonHost VPS优惠码BWH26FXH3HIQ,支持<支付宝> 【点击购买】!

Vultr$3.5日本节点,512M内存/500G流量/1G带宽,电信联通优化,延迟低,速度快【点击购买】!

阿里云香港、新加坡VPS/1核/1G/25G SSD/1T流量/30M带宽/年付¥288【点击购买】

Webhook各类网站的自动化部署校验脚本-PHP版本

`微信`扫码 加好友

链接到文章: https://gkxyz.com/webhookgeleiwangzhandezidonghuabushuxiaoyanjiaoben-phpbanben.html

推荐站点

  • 爱奇艺-在线视频网站-海量正版高清视频在线观看

    爱奇艺(IQIYI.COM)拥有海量、优质、高清的影视剧集等视频内容。爱奇艺VIP限时新用户特惠:首月6元,会 […]

  • 观察者网

    观察者网,致力于荟萃中外思想者精华,鼓励青年学人探索,建中西文化交流平台,为崛起中的精英提供决策参考。

  • 阿里云-为了无法计算的价值

    阿里云——阿里巴巴集团旗下公司,是全球领先的云计算及人工智能科技公司之一。提供免费试用、云服务器、云数据库、云 […]

  • 懂车帝 – 说真的还得懂车帝

    懂车帝是一个汽车资讯平台,懂车更懂你。懂车帝资讯平台会聪明地分析你的兴趣爱好,自动为你推荐喜欢的汽车内容,提供 […]

  • RAKsmart

    主机商介绍:RAKsmart是知名的美国服务器租用商,包括美国站群服务器、美国cn2服务器、香港服务器等热门产 […]

  • Web Hosting Services Crafted with Care – SiteGround

    Our web hosting is trusted by more than 2,800,000 domai […]

评论已关闭