时间戳转换工具

我这边用的是码云,希望web程序push到gitee上后,自动pull到云服务器,实现本地与服务器的数据同步更新。
我先是在服务器创建了一个 pull.php文件(该PHP 里面 就写了一个  echo 123;)。
然后去码云上面填写了 http://xxxxx.xxxxx.com/public/pull.php地址 码云钩子里面点击测试 可以成功返回123.
说明我的地址也OK 么有问题
但是我把pull.php 里面 内容改成 echo   shell_exec("cd /www/wwwroot/www;  git pull 2<&1");
(shell_exec()是执行 shell脚本函数)。确没有任何返回 也没有 把我的代码从 码云上面PULL下来
我好奇是不是我的 php脚本写的有问题 ?
于是我登陆我的服务器,然后用root账号,手动执行 php pull.php
居然成功了  把码云上面的代码成功的下载到我的服务器上了,这就说明我的脚本写的也没有问题,
这边可以定位到运行php的用户的pull权限问题。

问题处理1:生产并部署ssh key

    附上码云帮助文档链接:帮助文档链接

权限处理2:我这边是lump的www用户,给pull的文件加上www用户和www用户组,chown www:www pull.php

,这样给权限文件加了权限测试还是不行,推送到码云,还是没有自动同步到码云。

权限处理3:如果git不运行,则更改为sudo git,这时候就需要把apache增加到sudu免密运行列表中。

  1. # 编辑免密配置文件
    vim /etc/sudoers 【没权限执行编辑,chmod g+w /etc/sudoers】 
    www ALL=NOPASSWD:/usr/bin/git
    记得重启服务器:service  nginx reload 
    在推送到码云上就可以pull到服务器上来
现在 即使是 服务器炸了 我代码  在码云有备份    码云炸了   家里 也有   家里  电脑坏了  公司 还有!!! [坏笑] 

联系我们 - 首页 - 关于我们
Copyright © 2017-2022 iteam. All Rights Reserved. Current version is 2.50.0.
粤ICP备17021424号
VV:49881 UV:186516 PV:560898