解决GitLab web钩子无法成功执行phphook文件问题

搭建gitlab自动部署时,添加完web钩子和项目中的hook文件后,测试执行,显示200成功。但是实际项目代码中并未更新。

但是在服务端,通过PHP去执行hook.php,能成功拉取代码。

后来通过分析发现问题可能有两点:

方案一:

需要在sudoers文件中添加如下代码: 需要在sudoers文件中添加如下代码:
vim /etc/sudoers
www ALL=(ALL) NOPASSWD:ALL
vim /etc/sudoers www ALL=(ALL) NOPASSWD:ALL

此文件没有修改权限 权限为:440

修改权限为:640

待修改完毕后将修改权限收回

再测试执行gitlab web钩子是否成功拉取代码。

如果还未生效,再操作第二种方式。

方案二:

此文件没有修改权限 权限为:440 修改权限为:640 待修改完毕后将修改权限收回 再测试执行gitlab web钩子是否成功拉取代码。 如果还未生效,再操作第二种方式。 方案二:
此文件没有修改权限 权限为:440 修改权限为:640 待修改完毕后将修改权限收回 再测试执行gitlab web钩子是否成功拉取代码。 如果还未生效,再操作第二种方式。 方案二:
此文件没有修改权限 权限为:440 修改权限为:640 待修改完毕后将修改权限收回 再测试执行gitlab web钩子是否成功拉取代码。 如果还未生效,再操作第二种方式。 方案二:

查看一下,是否为www用户。如果你的是root用户。那执行如下命令:

chown -R www:www hook.php

再次尝试执行web钩子,即可上传成功。

如果大家还有其他的问题,欢迎留言。我们一起解决。

查看一下,是否为www用户。如果你的是root用户。那执行如下命令: chown -R www:www hook.php 再次尝试执行web钩子,即可上传成功。 如果大家还有其他的问题,欢迎留言。我们一起解决。
经验分享 程序员 微信小程序 职场和发展