登录  | 加入社区

黑狼游客您好!登录后享受更多精彩

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

查看: 305|回复: 0

php+Laravel 实现摆设主动化

[复制链接]

12

主题

0

帖子

0

现金

黑狼菜鸟

Rank: 1

积分
0
发表于 2017-12-6 10:11:09 | 显示全部楼层 |阅读模式 来自 美国
您的域名(hlsh.sh)未得到授权,部门功能受到影响!


尊重的用户:

  您好!非常感谢您能安装和关注本产物,为了产物的可连续发展和升级,众大云收罗已经开始收费。

  向用户收费是为了给用户更可靠的保障和服务,所收取的费用重要用于产物的正常运作、研发和改进,盼望各位可以或许明白和支持。

  别的,为了报答新老客户,众大云收罗3折优惠,原价980元,如今购买仅需290元,给您节流了690元。

  官方QQ群:23530791  客服QQ:155120699

  购买域名授权请打开下面的网址:

http://www.0762home.com/zt/csdn123_news/pay_url.php?url=hlsh.sh

  购买域名授权之后全部的未授权提示将主动消散,图片也正常表现,域名授权永世有用终身可用,后续的升级更新也是免费的,一次购买一辈子都能用,无后顾之忧!

提示:您现在利用的是免费试用版,可以手动删除上面的授权提示,发布这篇文章!


bWKpyH9KhobpVPVP.jpg
所谓主动化摆设, 我的明白就是在用户包管代码质量的条件下, 将代码可以或许快速的主动摆设到目的服务器上的一种本领.
实现原理

当地推送代码 -> 代码库 -> webhook 关照服务端 -> 主动拉代替码库代码
PEh4hExIZ4Pb4Xf5.jpg
天生而且摆设公钥

详细步调参照 设置SSH公钥
1) 天生公钥

# 利用给定的 email 天生 public/private rsa 密钥# 假如利用非默认地点必要设置 .ssh/config$ ssh-keygen -t rsa -b 4096 -C "[email protected]"2) 在 coding 中添加公钥

输出摆设公玥
$ cat coding.pub在git 管理端部门摆设公钥
v9cglmPn9mMmTPc3.jpg
3) 设置 config 文件

编辑 ~/.ssh/config 文件
Host git.coding.netUser [email protected] publickeyIdentityFile ~/.ssh/coding_rsa  // 天生的非默认地点的公钥存放点4) 测试是否可以链接到 [email protected] 服务器

# 留意 git.coding.net 接入到 CDN 上以是会剖析多个差别的 host ip $ ssh -T [email protected] authenticity of host 'git.coding.net (123.59.85.184)' can't be established.RSA key fingerprint is 98:ab:2b:30:60:00:82:86:bb:85:db:87:22:c4:4f:b1.Are you sure you want to continue connecting (yes/no)? # 这里我们根据提示输入 yesWarning: Permanently added 'git.coding.net,123.59.85.184' (RSA) to the list of known hosts.Coding 提示: Hello duoli, You've connected to Coding.net via SSH. This is a deploy key.duoli,你好,你已经通过 SSH 协议认证 Coding.net 服务,这是一个摆设公钥设置 webhook

让代码库吸收到关照的时间关照服务端吸收代码更新.
E8Y388oEY2Pa2Zoh.jpg
这种 webhook 的方式来吸收可以摆设的哀求, 这里的哀求利用的是 post 方法
php 吸收摆设

由于 php 脚本代码实行的时间会大概有服务的停止(比方实行时间), 不肯定符合现实, 以是筹划利用脚原来调用.
收到哀求 -> 存入队列 -> 脚本监听处置惩罚队列
由于利用 laravel 框架, 收到关照之后, 存入队列, 由于队列利用的是下令行监听, 以是下令行实行的时间不会出现停止环境.
在此之前必要设置运行代码的用户有权限可以或许访问到 git 的服务器. 也就是假如你的代码以 www-data 运行, 必要利用 www-data 的脚色来访问 [email protected] 服务器. 否则也不能实现摆设, 缘故原由是 密钥不符合而无权限获取内容.
1) 队列代码 设置 app/Jobs




上一篇:PHP开辟中办理并发题目的几种实现方法分析
下一篇:PHP底层的运行机制与原理
您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

 

QQ|申请友链|小黑屋|手机版|Hlshell Inc. ( 豫ICP备16002110号-5 )

GMT+8, 2024-5-15 04:27 , Processed in 0.100568 second(s), 47 queries .

HLShell有权修改版权声明内容,如有任何爭議,HLShell將保留最終決定權!

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表