- 博客(152)
- 资源 (12)
- 收藏
- 关注
原创 acme.sh 生成免费证书,维护证书
用shell脚本从Let’s Encrypt 或 zerossl 两个颁发证书的源站,获取ssl证书, 并定期维护的一个开源产品。在证书过期前,自动更新。为我们带来了开源的便利, 同时也节省了维护证书的所花的时间成本。安装acme.sh这里my@example.com可以随便填, 个人建议还是用自己的邮箱,本人的一个域名因为特殊字符没有自动更新, 会提前发邮件通知到。下载生成证书www.mydomain.com是申请证书的域名, /home/wwwroot/mydomain.com 是域名对应的项目
2022-12-03 23:35:48
3681
原创 网络编程基础-套接字
套接字是一对进程的2个端点。比如客户端访问服务端, 客户端需要一个端点,服务端需要一个端点。套接字一般是由“ip+端口构成”
2022-08-10 10:07:05
303
原创 子进程、孤儿进程,僵尸进程, init进程
一个进程在执行系统函数fork()后,会生成一个新进程。而原来的进程被称为父进程。新创建的子进程几乎与父进程相同,包括代码和数据段、堆、共享库以及用户栈。唯一的区别是它们拥有不同的PID.父进程比子进程先结束,则称子进程为孤儿进程。内核会安排init进程为孤儿进程的养父进程。子进程比父进程结束的早,而且还没有被回收,暂存于内核中,然后会占用内存资源。PID为1,在系统启动时由内核创建,是所有进程的祖先。......
2022-08-02 16:07:35
245
原创 php-fpm是什么, 以及它的演化
php-fpm是什么, 以及它的演化**概念:**php-fpm由一个master进程和多个worker进程组成。 当php-fpm接受到请求时,由master进程控制如何将请求分配给一个或多个子进程处理。**演化:**最开始时,只有cgi程序,当web服务器发送请求给cgi程序时,cgi会初始化,读取配置信息,返回数据,退出进程。 当再次接收一个新的请求时,又会开始初始化。。退出进程。 总会做一些大量重复的事情。 &n
2021-11-22 23:05:15
532
原创 本人的个人博客正式开通了
本人的个人博客正式开通了, 用beego+layui的框架,会分享一些技术知识点和读书笔记。http://blog.qiqizheng.cn/
2021-08-03 18:57:46
138
原创 2021-06-26(记录)
前言阅读了一段时间的laravel源码,现将一个成果做一个输出。主要是围绕laavel生命周期展开。文章目录前言1.加载composer2.创建app容器和绑定内核到app容器中2.1 创建app容器2.2 内核绑定app容器3.解析内核4.处理http请求4.1 获取http请求实例4.1.1 symfony组件处理请求参数4.2 handle 请求实例4.2.1 请求在管道中的实际处理5.发送响应6.终止程序1.加载composer2.创建app容器和绑定内核到app容器中代码如下(示
2021-06-28 16:02:35
142
1
原创 fiddler 更新证书后也无法抓取https解决方案
一.首选在次重置一下证书, 按照下图的步骤二:如果还不行,勾选Rules->Hide CONNECTS,发现请求的都是Tunnel to ,那么需要去官网安装CertMaker for iOS and Android插件三:官网地址:https://www.telerik.com/fiddler/add-ons四:下载安装成功后,重置证书就ok了...
2021-03-10 11:01:45
663
原创 shell 定时任务 每隔15天执行
目标:从当前时间开始每隔15天执行一次脚本背景: crontab 自带的命令不能满足这个需求。 * * */15 * * 只能在当月内每隔15天。比如:7.1 ,7,15,7.30 后会接着 8.1号执行。 并不能满足每隔15天。分析过程:1.百度、谷歌了很久。 都是2中方法, 一种是上面的crontab,显然不能满足;另一种是全网统一的shell【看了大家都是复制的,还都是图片,如下这张图】。2.涉及知识点 shell语法,sed替换文本。步骤shell脚本#! /bin/
2020-07-17 19:14:41
3153
原创 laravel 做表单验证失败后返回到首页的问题
这里做一个简单的记录。原因归根到底是框架这里的代码问题,vendor/laravel/framework/src/Illuminate/Foundation/Http/FormRequest.php:136解决方案http请求 headers accept 使用application/json 解决问题
2020-06-19 18:10:31
716
原创 php-fpm的3种工作模式
php-fpm的3种工作模式1.dynamic(动态模式)2.ondemand3.static 静态模式这里着重说一下 dynamic 和 ondemand 模式。先来解释几个参数:pm.start_servers 动态模式下是开始时的进程数。pm.min_spare_servers 闲置状态时最小进程数pm.max_spare_servers 闲置状态时最大进程数pm.max_children 最大进程数pm.process_idle_timeout 进程超过时间会被
2020-06-04 10:39:42
933
原创 软404优化
今天接到了一个任务, 处理软404, 做一个记录。为什么要处理:软404太多,会影响谷歌爬虫反复抓取这种没有内容的网页而导致网站降权。什么是软404:请求的url返回的是空数据,但是状态是200. 导致无效抓取。解决方法:将状态码 返回404或者410(已删除)。 告知搜索引擎,该网页不存在。...
2020-05-26 19:01:50
220
原创 分析框架中慢查询------定位sql
一. 定位sql**1>. 开启mysql慢查询日志** 在mysql.cnf //慢查询日志路径 log-slow-queries = /var/lib/mysql/slow.log //最长执行时间 s为单位 long_query_time = 2**2>.php-fpm 慢脚本日志** 在php-fpm.conf 中 //最长查询时间 s为单位 request_slowlog_timeout = 2 //慢脚本日志路
2020-05-21 18:43:00
157
原创 swoft 学习 ----- 环境搭建
linux 下 composer 安装安装条件 :1. php >= 7.12. 必须安装 swoole扩展 (swoole已经被收入php官方扩展库,可以pecl install swoole安装)3. 必须安装php redis扩展composer create-project swoft/swoft Swoft //[配置国内apiyun 镜像,可以提速 composer config -g repo.packagist composer https://mirrors.aliyu
2020-05-18 00:13:22
210
原创 记录一次删系统自带python2.6 出现的yum失效
安装flask用的python3,之后觉得系统自带的python2碍事,手残给删了。 然后就发现yum用不了了 (狗头),按照网上的教程修改头文件也不行。折腾了半天,也没用,最后直接删除yum,全部python。重新安装yum。 然后又回到了最初,一个下午没有了…按照此方法安装https://www.cnblogs.com/shmily3929/p/9964862.html...
2020-05-16 18:58:05
176
原创 element 做统计时, 将金额精度显示为2位
在官方代码后补充 sums[index] = parseFloat(sums[index]).toFixed(2); getSummaries(param) { const { columns, data } = param; const sums = []; const nu = ''; columns.forEach((column, index) =>
2020-05-08 19:35:42
574
原创 laravel 中定时任务 创建
问题: linux下设置任务需要每个任务都配置一条命令,不方便管理。 laravel框架提供了, 统一管理方法。方法: 1.在app/Console 目录下创建 Commands/文件名 ,拿test举例吧代码如下 <?php namespace App\Console\Commands; use Illuminate\Console\Command; use Ill...
2020-05-07 19:51:20
246
原创 laravel 中 使用闭包查询 分开whereIn
问题: 会根据判断条件决定是否使用whereIn ,laravel不支持where(field, ‘in’, $data)写法, 只能在链式查询中使用whereIn,这样会造成一些不便。解决: 使用闭包查询 $whereIn = []; if(条件 = true){ $whereIn = function ($query) use ($field, $data) { ...
2020-05-06 19:37:23
1678
原创 vue+element 分页current-page设置页码失效问题
需求:每经过一次新的查询后,分页页码就要调到第一页。我设置查询后current-page = 1问题: 如果已经跳转到了下一页,在次查询,current-page = 1 会失效。经查资料: element 对双向绑定支持的不是很好。 使用vue的sync修饰符。解决方案: 将 current-page换成 current-page.sync [已验证]...
2020-04-29 19:16:20
4081
1
原创 php api设计
目前的比较流行接口的设计 restful 风格, outh2.0接口。从对接方分类1.跟第三方对接 一般使用outh2.0验证安全。2. 客户端提供接口 生成token,timestamp,sign。 自己目前在工作中简答使用的思路: 1.客户端请求登陆接口时,更新token和timestamp ,同时返回给客户端token和timestamp。 2.其它接...
2020-04-27 19:39:54
402
原创 php 字符串操作练习题
输入格式为"get-element-by-id"的任意字符串,将其转换为驼峰命名的字符串,例如getElementById实现字符串的翻转【分别用系统函数和自定义函数】$str = “get-element-by-id”;统计字符串出现频率$str = “get-element-by-id”; 统计出d出现的频率字符串替换函数$str = “get-element-b...
2019-11-05 18:53:18
1116
1
转载 前后端分离的优缺点(转)
一、前端前后端分离已成为互联网项目开发的业界标准使用方式,通过nginx+tomcat的方式(也可以中间加一个nodejs)有效的进行解耦,并且前后端分离会为以后的大型分布式架构、弹性计算架构、微服务架构、多端化服务(多种客户端,例如:浏览器,车载终端,安卓,IOS等等)打下坚实的基础。这个步骤是系统架构从猿进化成人的必经之路。核心思想是前端html页面通过ajax调用后端的restuful ...
2019-08-04 12:48:21
449
原创 php实现 异步请求
使用场景:通知消息、邮件等场景,主进程等待响应时间很长,造成阻塞。影响客户体验。解决思路:redis(文件缓存)+crontab将发送内容写入缓存, 写定时脚本检测 是否存在,如果存在则触发请求,成功后删除缓存。...
2019-05-13 18:46:46
653
转载 PHP 出现 502 解决方案(转)
nginx+php 出现502 bad gateway,一般这都不是nginx的问题,而是由于 fastcgi或者php的问题导致的,常见的有以下几种。php.ini 的memory_limit 过小(如果有个别php程序进程需要占用极大内存时这个必须注意)php-fpm.conf 中max_children或者max_requests 设置不合理(设置过小会因为没有足够的cgi进程...
2018-10-18 16:54:06
1497
原创 wampserver 3.0以上版本安装
本人在安装wampserver3.0 以上版本时出现的问题,现在汇总下。安装好执行时提示“计算机中丢失 msvcr110.dll” 解决方式:https://jingyan.baidu.com/album/4f7d57129fa86e1a201927de.html?picindex=2提示丢失“计算机中丢失VCRUNTIME140.dll” 解决方案:https://www.micro...
2018-07-03 09:19:51
688
原创 zend studio 构建自己的项目目录
zend studio 构建命名空间 1.文件->切换工作空间->设置命名空间 2.文件->新建->local php project 3.然后在刚才第二步建立的目录选中->右击导入->常规-> 文件系统->选择要导入的目录...
2018-06-30 14:10:56
392
转载 50个php程序性能优化的方法,赶紧收藏吧!(转)
1、 用单引号代替双引号来包含字符串,这样做会更快一些。因为 PHP 会在双引号包围的 字符串中搜寻变量,单引号则不会,注意:只有 echo 能这么做,它是一种可以把多个字符 串当作参数的“函数”(译注:PHP 手册中说 echo 是语言结构,不是真正的函数,故把函数 加上了双引号)。2、如果能将类的方法定义成 static,就尽量定义成 static,它的速度会提升将近 4 倍。3、ro...
2018-06-15 09:34:55
463
原创 火狐游览器 restclient插件 模拟 curl
1 .首先打开火狐浏览器,点击右上角的“三”图标按钮。 2.出来一个提示框,我们选择“Add-ons”。 3.此时会进入火狐的应用商店,我们在右上角的搜索框中输入“RESTClient”,回车搜索。4.因为我已经安装了RESTClient,此时再搜索就不会出来RESTClient,不过搜索结果和下面这个相似,如果要安装的话直接点击“Install”即可。 5.我们...
2018-03-02 19:21:56
1654
原创 php截取指定2个字符之间字符串的方法
function get_between($input, $start, $end) { $substr = substr($input, strlen($start)+strpos($input, $start),(strlen($input) - strpos($input, $end))*(-1)); return $substr;}
2018-01-29 14:31:14
5422
原创 php 生成致命错误的日志方法
register_shutdown_function( "fatal_handler" ); //在脚本执行完成或者exit后调用 set_error_handler("error_handler"); define('E_FATAL_initcaoffer', E_ERROR | E_USER_ERROR | E_CORE_ERROR |
2017-12-23 18:12:29
975
转载 php 自定义函数 和 系统函数 的变量从内存释放
动态变量在函数执行完毕后立即释放静态变量是通过static关键字声明的变量,当第一次调用函数的时候相当于初始化函数,当函数执行完毕后,静态变量并没有释放,而是保存在静态内存中,下次调用时则是先从静态内存中取值接着执行.函数是通过return语句返回一个变量。返回的变量从全局符号表中获取一个实体并将其refcount的值增加1.当函数结束时,函数的符 号表将被销毁。在销毁的过程中,Zend引擎将遍历符
2017-12-19 19:55:48
1190
转载 38条PHP优化代码!让你的程序更简洁!
1.如果一个方法能被静态,那就声明他为静态的,速度可提高1/4;2.echo的效率高于print,因为echo没有返回值,print返回一个整型;3.在循环之前设置循环的最大次数,而非在在循环中;4.销毁变量去释放内存,特别是大的数组;5.避免使用像__get, __set, __autoload等魔术方法;6.requiere_once比较耗资源;//hhhtfxzgjy7.在includes和r
2017-12-19 18:04:35
350
转载 php 生命周期
转载http://blog.csdn.net/hguisu/article/details/7377520 PHP的运行模式PHP两种运行模式是WEB模式、CLI模式。无论哪种模式,PHP工作原理都是一样的,作为一种SAPI运行。 1、当我们在终端敲入php这个命令的时候,它使用的是CLI。 它就像一个web服务器一样来支持php完成这个请求,请求完成后再重新把控制权交给终端。
2017-12-19 01:47:00
484
原创 PHP中的unset方法究竟能否释放内存
http://blog.csdn.net/chanya/article/details/49251025
2017-12-18 17:45:05
1744
原创 php 程序的优化方案
1.应当尽可能减少静态变量的使用,在需要数据重用时,可以考虑使用引用(&)。2.数据库操作完成后,要马上关闭连接;3.一个对象使用完,要及时调用析构函数(__destruct())4.用过的变量及时销毁(unset())掉5.可以使用memory_get_usage()函数,获取当前占用内存 根据当前使用的内存来调整程序6.unset()函数只能在变量值占用内存空间超过256字节时才会释放内存空间。
2017-12-18 17:41:07
450
原创 php-cli和php-fpm的关系是什么?
简单理解呢,cli就是你在命令行里运行PHP用的,fpm就是通过web访问用的CLI是命令行版本。 FPM是作为Apache或者Nginx等服务器软件处理PHP文件的扩展。PHP的默认版本是不支持线程安全的,这个线程安全问题可以去了解PHP扩展开发方面的相关知识,这是因为C语言方面的问题了。cli和fpm是php的两种运行方式,而线程安全和非线程安全应该才能说的上是版本。是否开启线程安全可以在编译
2017-12-18 17:39:17
3623
原创 SVN----Cleanup failed to process the following paths错误的解决
在使用TortoiseSVN工具执行时经常出现Cleanup failed to process the following paths的错误原因是.svn 目录下 wc.db 中 wc_lock和work_queue表将svn锁在当前具体操作:百度下载下载sqlite3.exe ,下载后解压放到sqlite3.exe 放到 .svn 目录下,cmd启动命令行,将盘符转向sqli...
2017-11-24 20:28:02
910
原创 php redids 扩展
php/ext/ 加入 php_redis.dll php.ini 里 加入 extension=php_redis.dll重启
2017-11-23 09:30:55
534
WdatePicker 时间控件插件(压缩文件)
2016-01-06
WdatePicker 时间控件插件
2016-01-06
页面编辑器
2013-04-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人