在PHP使用coding的WebHook实现自动化部署时出现 Host key verification failed.的问题

我在第一次使用使用coding的WebHook自动部署时,因为我用的PHP编写脚本执行shell_exec,按照网上查询的资料部署好后发现脚本执行git pull出现如下问题:
我的脚本是这样编写的,也是网上别人那里看来的,有很多版本,目前觉得这个是最可靠的,也是思路最清晰的。

<?php
error_reporting(1);
$web_path = '/www/wwwroot/wcfadmin';
// Coding新版本的webhook若是设置了token,Coding则对每个请求进行了哈希签名
// 这个签名会放在请求头 X-Coding-Signature,在服务器端我们需要进行签名解析才能拿到真正数据

// token验证令牌,与Coding webhook上设置的一致,用于与Coding进行身份验证,防止恶意提交代码
$token = 'liuxiaojing';

// 从请求头中获取签名
$signature = $_SERVER['HTTP_X_CODING_SIGNATURE'];

// 接收Coding post传递的参数
$json_post = file_get_contents('php://input');

// 进行签名解析
$sha1 = hash_hmac("sha1",$json_post,$token);

$calculate_signature = 'sha1='. $sha1;

$fs and fclose($fs);

// 进行身份验证
if ($calculate_signature !== $signature) {
    exit(json_encode(['error'=>'error request']));
}

// shell_exec()即PHP用于执行系统命令的函数
/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值