腾讯云直播配置
背景最近项目涉及到直播以及即时通信IM的业务场景,即时通信这个我们可以利用gatewayworker自行开发;但是直播需要考虑到并发等诸多因素,于是选择第三方服务,比如腾讯、阿里等,这里就以腾讯云直播【标准直播(LVB)】为例。 前期准备腾讯云账号、备案域名这就不说了。其次,首次接触直播,也不清楚直播的流程,也不清楚选择哪个服务,所有做起来就稍微比较迷茫。腾讯云入口 最笨的办法就是把云直播的产品简历浏览一遍,最好的办法就是问问周围的大佬。(PS:腾讯云的客服也超级给力) 自行根据产品需求不同进行选择吧。 开始使用云直播服务,至少需要2个域名,一个作为推流域名,一个作为播放域名,推流和播放不能使用相同的域名,这个自行在域名管理上绑定CNAME。(域名必须要备案) 注意:添加的域名,一定要按照格式: www.test.com,可以使用二级域名。比如,推流域名;push.test.com;播放域名:play.test.com; 这个域名就是你域名解析列表中的真实域名 其中系统默认分配的推流域名,可以当作测试使用,也可以当作正式推流域名使用。当然也可以自定义推流域名,默认分配的域名不需 ...
宝塔使用webhook实现conding代码自动部署
安装和配置WebHook 打开宝塔软件商店,安装WebHook,安装好点击设置-添加-输入名称-添加脚本代码。(注意脚本代码第16行需要替换) 脚本代码如下1234567891011121314151617181920212223242526272829303132333435363738#!/bin/bashecho ""# 输出当前时间date --date='0 days ago' "+%Y-%m-%d %H:%M:%S"echo "Start"# 判断宝塔WebHook参数是否存在if [ ! -n "$1" ];then echo "param参数错误" echo "End" exitfi# git项目路径(这里需要配置,$1为运行传入脚本的第一个参数,coding那边配置)gitPath="/www/wwwroot/$1"# git 网址(ssh的地址)gi ...
解决 GitHub 访问不了
GitHub是一个面向开源及私有软件项目的托管平台,我们可以寻找大佬们开源的代码以及部署个人的代码。 最近Github时常无法访问,也不是网络的原因,这让人有点烦恼,最后在网上找了一些解决方法,如下操作(windows系统为例子): 注意一点:win10用户,hosts文件都是有权限的,所以会出现保存失败。关于设置图在最低下 打开 C:\Windows\System32\drivers\etc\hosts 输入以下代码 123456789101112131415161718192021222324252627282930185.199.108.154 github.githubassets.com140.82.114.21 central.github.com185.199.108.133 desktop.githubusercontent.com185.199.108.153 assets-cdn.github.com185.199.108.133 ...
使用Guzzle执行HTTP请求
由于最近对第三方api需求量高的原因,不同的api对于curl请求稍微有点出入,而且多了显得代码冗余,为了整合统一请求调用,就开始使用Guzzle。 Guzzle介绍Guzzle是一个PHP的HTTP客户端,用来轻而易举地发送请求,并集成到我们的WEB服务上。Guzzle中文文档 接口简单:构建查询语句、POST请求、分流上传下载大文件、使用HTTP cookies、上传JSON数据等等。 发送同步或异步的请求均使用相同的接口。 使用PSR-7接口来请求、响应、分流,允许你使用其他兼容的PSR-7类库与Guzzle共同开发。 抽象了底层的HTTP传输,允许你改变环境以及其他的代码,如:对cURL与PHP的流或socket并非重度依赖,非阻塞事件循环。 中间件系统允许你创建构成客户端行为。 安装一般情况下,TP框架都会自带有,无需安装,如果没有的话,Composer安装 composer require guzzlehttp/guzzle 使用基本的使用方法就不写了,可以直接到 Guzzle 查看文档,更详细。 注意:当我们使用form_params做键时,Guzzle会把param ...
JWT -- JSON WEB TOKEN
什么是JWTJWT官网 JSON Web Token(JWT)是一个开放标准(RFC 7519),该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。 JWT 的数据结构例子:eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczpcL1wva3VrdS5odXNhbzcwMzE1LCJkYXRhIjp7InVpZCI6MX19.PyUbtFEzDTq1i_SXgD-ArNJrjym9PLXK5d7ghJK9FUI JWT通常由三部分组成: 头部(Header), 载荷(Payload)和签名(Signature)。其三段信息用 . 连接组成JWT字符串。 HeaderHeader 部分是一个 JSON 对象,承载着两部分信息;将其进些base64加密(运用对称加密)即可构成JWT的第一部分。1234 ...
MySQL数据库为utf8mb4编码仍然无法保存表情符号的问题
解决方案修改MySQL配置文件 修改mysql配置文件my.cnf(windows为my.ini) my.cnf一般在etc/mysql/my.cnf位置。找到后请在以下三部分里添加如下内容: [client] default-character-set = utf8mb4 [mysql] default-character-set = utf8mb4 [mysqld] character-set-client-handshake = FALSE 关键设置 character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci init_connect=’SET NAMES utf8mb4’ 原文地址:https://www.copylian.com/technology/446.html
TP6+消息队列
PHP消息队列1、消息队列概念从本质上说消息对列就是一个队列结构的中间件,也就是说消息放入这个中间件之后就可以直接返回,并不需要系统立即处理,而另外会有一个程序读取这些数据,并按顺序进行逐次处理。 2、核心结构业务系统 --(入队)--> 消息队列 --(出队)--> 队列处理系统 3、应用场景1、数据冗余:比如订单系统,后续需要严格的进行数据转换和记录,消息队列可以把这些数据持久化的存储在队列中,然后有订单,后续处理程序进行获取,后续处理完之后在把这条记录进行删除来保证每一条记录都能够处理完成。2、系统解耦:使用消息系统之后,入队系统和出队系统是分开的,也就说其中一个崩溃之后不会影响另外一个的正常运行。3、异步通信:消息本身使用入队之后可以直接返回。4、扩展性:例如订单队列,不仅可以处理订单,还可以给其他业务使用。5、排序保证:有些场景需要按照产品的顺序进行处理比如单进单出从而保证数据按照一定的顺序处理,使用消息队列是可以的。6、流量削峰:就是秒杀和抢购的时候,会出现明显的流量剧增,对服务器的压力非常大。7、消息通讯:消息队列一般都内置了高效的通信机制,因此也可以用在纯的 ...
PHP使用phpword生成word文档
话不多说,直接开干1、composer安装phpword包1composer require phpoffice/phpword 2、准备一个word模板简单案列: 上图为原模板,我们替换姓名和邮箱,就拿两个变量替换原模板文字,操作如下: 3、渲染变量操作12345include_once "vendor/autoload.php";$word=new \PhpOffice\PhpWord\TemplateProcessor('word.docx');//打开模板,模板地址需要绝对路径$word->setValue('name','heyiki');//替换变量name$word->setValue('email','[email protected]');//替换变量email$word->saveAs('test.docx');//另存为,地址需要绝对路径,注意命名别用中文 打开test.docx文档将看见,变量已经替换, ...
PHP常用第三方插件
PHP常用第三方插件微信开发 (现在一般PHP7.2 + 4.2以上,原有的小程序授权存在的问题已修复)1composer require overtrue/wechat:~4.0 -vvv 通用第三方登录SDK 传送门1composer require anerg2046/sns_auth 支付(微信支付和支付宝)1composer require yansongda/pay -vvv 生成二维码1composer require endroid/qr-code 处理word文档1composer require phpoffice/phpword 处理excel1composer require phpoffice/phpspreadsheet 发送邮件1composer require phpmailer/phpmailer thinkphp定时任务1composer require yunwuxin/think-cron
汇聚支付
6ed616fb601a25d1f8748e02f1c3c1e0f082ce1f43bf10f967731721d68504980da5e30d1f6edc0848eb814e24ac61bd773e231f2dd01f6520a04e208088854154dbbe150e80e29841b563361fefaf8a655b1ec7233f61b3618562c338aef6300d6f43063d11f000d5db6fe722da45e52fbd9be81d9555fe3bce5ec3bf101d8e8d48f384952e550ac3c524f2de05fd675ec1cb1c7d63021a6fa181cd992586e446d5a0555df4c50ad1fccd2b6ae265512116c27935acb6eb7568c5c1039e4648e8d1d717694e2863c3f0bc9d9d1b24e6cfa23237aba4e65d298ada5ceca1d90f316b163fb67802700b0c2f1d7bf8845acba94b857b55fb309 ...