- 博客(88)
- 资源 (9)
- 收藏
- 关注
原创 wkhtmltopdf 生成pdf提示-- Warning: Blocked access to file,报错
现在默认情况下禁用本地文件访问。可以通过添加参数来解决,此问题在wkhtmltopdf同样适用。原因:wkhtmltopdf升级后由于版本0.12.6中的默认行为更改引起的。生成pdf命令中增加以下参数。
2023-03-10 10:14:21
1356
1
转载 使用jQuery时,需要合并未知数量个ajax请求方法
一、已知数量的ajax请求时当ajax请求的数量固定且已知时,可以直接使用jQuery的$.when().then()方法:$.when(ajax1,ajax2,ajax3,...).then(successFunc(){},failFunc(){});示例:$.when($.ajax(options), $.ajax({options})).done(function (data1, data2) { //doSomething});二、当未知数量的ajax..
2020-05-25 16:56:07
565
原创 homestead 添加thinkphp3 项目配置
1. 在homestead/scripts文件夹下新建serve-thinkphp3.sh,内容如下#!/usr/bin/env bashdeclare -A params=$6 # Create an associative arraydeclare -A headers=${9} # Create an associative arraydeclare -A rewrites=${10} # Create an associative arrayparamsTXT="
2020-05-13 14:29:55
565
1
转载 网站性能优化实战
转载来源:https://dwz.cn/QsPHj4jk本文是对之前同名文章的修正,将所有 webpack3 的内容更新为 webpack4,以及加入了笔者近期在公司工作中学习到的自动化思想,对文章内容作了进一步提升。 引 言对于网站的性能,在行业内有很多既定的指标,但就以前端 er 而言,我们应该更加关注以下指标:白屏时间、首屏时间、整页时间、DNS 时间、CPU ...
2020-03-25 22:03:47
266
转载 关于DNS不得不说的一些事
引言今天我们来聊聊DNS。所谓域名系统(Domain Name System缩写DNS,Domain Name被译为域名)是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,可以balabala..省略一万字不表,因为这都不是重点!重点只有一个,大厂经常问!没错,正是因为DNS包含着很多大厂常考面试知识点!因此,烟哥认为很有必要再开一文说明。正文概念...
2020-03-25 22:02:20
329
转载 利用ELK分析Nginx日志生产实战
来自公众号:民工哥技术之路本文以api.mingongge.com.cn域名为测试对象进行统计,日志为crm.mingongge.com.cn和risk.mingongge.com.cn请求之和(此二者域名不具生产换环境统计意义),生产环境请根据具体需要统计的域名进行统计。由于涉及生产线上服务器,故本文部分服务器IP做了打码处理。一、服务介绍1.1、ELKELK是三个开源软件的...
2020-03-25 22:02:01
608
转载 Redis:Bitmaps使用场景-用户签到、统计活跃用户、用户在线状态
在Redis中我们经常用到set,get等命令,细心的你有没有发现,还有几个相似的命令叫setbit,getbit,它们是用来干嘛的?BitMap是什么就是通过一个bit位来表示某个元素对应的值或者状态,其中的key就是对应元素本身。我们知道8个bit可以组成一个Byte,所以bitmap本身会极大的节省储存空间。Redis中的BitMapRedis从2.2.0版本开始新增了set...
2020-03-08 21:35:08
367
原创 使用swoole多进程导出csv文件
$start_time = microtime(TRUE);$max_num = 5; //进程数$per_file = 100000; //每个文件导出的记录数$process_pool = array();for($i=1;$i<=$max_num;$i++){ //父子进程共享一个mysql连接。会使mysql失去连接 $proces...
2020-01-13 18:09:41
1148
转载 Swoole的简单运用实现例子
前言我们使用PHP开发WEB应用基本都是使用传统的LAMP/LNMP模式来提供HTTP服务,这种模式一般是同步且堵塞的,若我们想使用PHP开发一些高级的特性(例如:异步,非堵塞,网络服务器等),那么Swoole无疑是最佳的选择,那什么是Swoole呢?PHP的异步、并行、高性能网络通信引擎,使用纯C语言编写,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,...
2019-12-24 10:36:01
1341
转载 awk使用详解
第一篇 awk简介与表达式实例 一种名字怪异的语言 模式扫描和处理,处理数据和生成报告。 awk不仅仅是linux系统中的一个命令,而且是一种编程语言;它可以用来处理数据和生成报告(excel);处理的数据可以是一个或多个文件;可以是直接来自标准输入,也可以通过管道获取标准输入;awk可以在命令行上直接编辑命令进行操作,也可以编写成awk程序来进行更为复杂的运用。...
2019-11-14 14:34:46
508
转载 Yaf继承Yaf_Request_Http获取参数并验证
Yaf_Request_Http代表了一个实际的Http请求, 一般的不用自己实例化它, Yaf_Application在run以后会自动根据当前请求实例它,在控制器内可以使用$this->getRequest()来获取请求信息。使用示例class IndexController extends Yaf_Controller_Abstract{ public function...
2019-06-21 17:44:21
2554
转载 MySQL 性能优化神器 Explain 使用分析
简介MySQL 提供了一个 EXPLAIN 命令, 它可以对SELECT语句进行分析, 并输出SELECT执行的详细信息, 以供开发人员针对性优化.EXPLAIN 命令用法十分简单, 在 SELECT 语句前加上 Explain 就可以了, 例如:EXPLAINSELECT*fromuser_infoWHEREid<300;准备为了接下来方便演示 ...
2019-05-21 10:18:23
163
转载 MySQL语句 关联两表 合并重复列值 (一对多合并查询)
没用一对多前的查询语句效果如图:期望效果如图:可以看到把重复的数据合并成一行,实现一对多的效果。原先效果:SELECT u*,r.name AS rnameFROM sys_user u left join sys_role r on u.pk_role=r.pk_roleWHERE 1=1 and ifnull(u.jl_is_del,0)=0 and u.pk_cor...
2019-05-17 17:24:53
5915
原创 FastCGI sent in stderr: "PHP message: PHP Warning: require(): open_basedir restriction in 错误
在nginx配置thinkphp项目,访问的时候碰到以下错误[error] 1196#0: *7 FastCGI sent in stderr: "PHP message: PHP Warning: require(): open_basedir restriction in effect. File(/srv/www/local.wz.com/thinkphp/base.php) is n...
2019-05-16 18:13:17
14513
1
转载 动态添加的元素加layui上传事件
<link href="~/Scripts/kit_admin/plugins/layui/css/layui.css" rel="stylesheet" /><script src="~/Scripts/kit_admin/plugins/layui/layui.all.js"></script><script src="~/Scripts/jque...
2019-04-15 11:52:31
2604
转载 一文搞定Redis高级特性与性能调优(转)
本文从 Redis 基本特性入手,通过讲述 Redis 的数据结构和主要命令对 Redis 的基本能力进行直观介绍。之后概览 Redis 提供的高级能力,并在部署、维护、性能调优等多个方面深入介绍和指导。本文适合使用 Redis 的普通开发人员,以及对 Redis 进行选型、架构设计和性能调优的架构设计人员:Redis 的数据结构和相关常用命令 数据持久化 内存管...
2019-03-28 23:37:53
323
转载 PHP程序员如何理解依赖注入容器(dependency injection container)
转载来源:https://segmentfault.com/a/1190000002424023背景知识传统的思路是应用程序用到一个Foo类,就会创建Foo类并调用Foo类的方法,假如这个方法内需要一个Bar类,就会创建Bar类并调用Bar类的方法,而这个方法内需要一个Bim类,就会创建Bim类,接着做些其它工作。 // 代码【1】 class Bim { ...
2018-07-26 16:45:00
640
转载 WebSockets 、Server-Sent Events、Long-polling 对比
社交网络如此流行,以至于所有的厂商都想在他们的网站中加入一些新的特性,例如有些需要即时的通知。这是非常常见的需求,设想你打开一个页面后,你肯定想你收到的通知,好友的状态列表等等即时的展现出来。原来的web设计就是一种方法,一个请求,一个相应,而现在在HTML5的帮助下对于服务器和客户端的通信来讲,我们有了新的办法。虽然现在还是有很多人在使用Long-polling技术模拟服务器和客户端的通信。随着...
2018-07-16 13:14:39
1308
转载 DDoS攻击、CC攻击的攻击方式和防御方法
DDoS介绍DDoS是英文Distributed Denial of Service的缩写,意即“分布式拒绝服务”,那么什么又是拒绝服务(Denial of Service)呢?可以这么理解,凡是能导致合法用户不能够访问正常网络服务的行为都算是拒绝服务攻击。也就是说拒绝服务攻击的目的非常明确,就是要阻止合法用户对正常网络资源的访问,从而达成攻击者不可告人的目的。分布式拒绝服务攻击一旦被实施,攻击网...
2018-07-05 10:17:42
543
转载 工作常用 Git 命令小清单
需要学习的东西太多了,很多命令用到时却忘了,分享一个经典的Git 常用命清单,建议收藏,或者收进你的云笔记中,方便用到时查阅。名词翻译必须知:workspace:工作区Index / Stage:暂存区Repository:仓库区(本地仓库)Remote:远程仓库新建代码库添加或删除文件代码提交到仓库分支管理标签管理查看历史或统计信息代码远程同步撤销恢复来源:https://www.toutiao...
2018-03-26 13:22:22
316
转载 缓存详解
前言总括: 缓存从来都是前端的一个痛点,很多前端搞不清楚缓存到底是何物,从而给自己创造了一些麻烦,本文一如既往的用通俗易懂的文字和实例来讲述缓存,希望能让您有所得。原文博客地址: 缓存详解知乎专栏&&简书专题:前端进击者(知乎)博主博客地址:Damonare的个人博客天青色等烟雨,而我在等你。正文缓存是一种保存资源副本并在下次请求时直接使用该副本的技术。说实话,我起始真的不知道怎么...
2018-02-01 14:45:29
221
转载 PHP中被忽略的性能优化利器:生成器
转载来源:https://segmentfault.com/a/1190000012334856?utm_source=weekly&utm_medium=email&utm_campaign=email_weekly如果是做Python或者其他语言的小伙伴,对于生成器应该不陌生。但很多PHP开发者或许都不知道生成器这个功能,可能是因为生成器是PHP 5.5.0才引入的功能,也可以是生成器
2017-12-14 13:50:32
212
转载 浏览器和服务器实现跨域(CORS)
前端对Cross-Origin Resource Sharing 问题(CORS,中文又称'跨域')应该很熟悉了。众所周知出于安全的考虑,浏览器有个同源策略,对于不同源的站点之间的相互请求会做限制(跨域限制是浏览器行为,不是服务器行为。)。不过下午想到了一个略无趣的问题:浏览器和服务器到底是如何判定有没有跨域呢?本文主要分两个部分,一是对这个问题的总结,二是nginx下如何配置服务器允许跨域。
2017-11-20 15:39:55
1067
原创 nginx用户认证配置
nginx_http_auth_basic_module模块实现让访问着,只有输入正确的用户密码才允许访问web内容。web上的一些内容不想被其他人知道,但是又想让部分人看到。nginx的http auth模块以及Apache http auth都是很好的解决方案。 默认情况下nginx已经安装了ngx_http_auth_basic_module模块,如果不需要这个模块,可以加上 –withou
2017-11-06 22:50:26
441
原创 PHP 使用SOAP调用接口开发,偶尔会报错
用SOAP做接口开发的时候间歇性碰到一个错误:PHP Fatal error: SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://test.com/openService/test.wsdl' : failed to load external entity "http://test.com/openService/test.wsdl"处理方
2017-09-18 16:16:07
1550
转载 php 浮点数比较方法
原文链接:http://blog.youkuaiyun.com/fdipzone/article/details/48106065浮点数运算精度问题首先看一个例子:$a = 0.1;$b = 0.9;$c = 1;var_dump(($a+$b)==$c);var_dump(($c-$b)==$a);?>12345678$a+$b==$c 返回true,正确 $c
2017-09-13 18:13:23
893
原创 Let's Encrypt 给网站加 HTTPS
Let’s Encrypt简介Let’s Encrypt是EFF、Mozilla、Cisco、Akamai、IdenTrust与密西根大学研究人员共同创立的组织,这是一个免费的凭证中心(Certification Authority,CA),目的在于推动全球所有的网站都使用HTTPS加密传输,并由非营利的网际网路安全研究组织Internet Security Research Group(ISRG)
2017-07-16 18:02:06
665
转载 lsyncd实时同步搭建指南——取代rsync+inotify
1. 几大实时同步工具比较1.1 inotify + rsync最近一直在寻求生产服务服务器上的同步替代方案,原先使用的是inotify + rsync,但随着文件数量的增大到100W+,目录下的文件列表就达20M,在网络状况不佳或者限速的情况下,变更的文件可能10来个才几M,却因此要发送的文件列表就达20M,严重减低的带宽的使用效率以及同步效率;更为要紧的是,加入inotif
2017-07-14 14:25:30
607
原创 使用rsync +cwrsync实现windows和linux的文件同步
1.rsync 简介Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件,也可以使用 Rsync 同步本地硬盘中的不同目录。 Rsync 是用于取代rcp的一个工具,Rsync使用所谓的 “Rsync 算法” 来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。您可以参
2017-07-11 16:48:29
7727
转载 PHP session锁:如何避免session阻塞PHP请求
来源:https://log.zvz.im/2016/02/27/PHP-session/ https://ma.ttias.be/php-session-locking-prevent-sessions-blocking-in-requests/PHP session 的锁机制也许不是每个人都很清楚,如果你不注意,就会造成程序运行慢的问题。 如果你能了解其背后的机制,且能预判这
2017-06-29 14:27:06
5163
1
转载 内网穿透 ngrok 服务器和客户端配置
来源:https://xicheng412.github.io/2016/09/27/ngrok-config/前言实验室有很多电脑,想要把这些电脑的服务比较方便的配置到网上访问,所以需要内网穿透。在网上搜索了很多资料,自己摸索了几天以后才配置好,主要的问题就是要特别注意整个过程,每一个过程基本上都是有先后顺序的,不能随意变更,否则容易导致最终结果不成功。n
2017-06-19 17:51:58
1109
原创 XOR (异或)加密简单实现
参考: http://www.ruanyifeng.com/blog/2017/05/xor.html?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io一、 XOR 运算逻辑运算之中,除了 AND 和 OR,还有一种 XOR 运算,中文称为”异或运算”。 它的定义是:两个值相同时,返回false,否则返回true。也就是说,XO
2017-06-07 10:40:02
1152
转载 mysql分组取每组前几条记录(排名) 附group by与order by的研究
来源:http://www.jb51.net/article/31590.htm--按某一字段分组取最大(小)值所在行的数据 复制代码代码如下:/* 数据如下: name val memo a 2 a2(a的第二个值) a 1 a1--a的第一个值 a 3 a3:a的第三个值 b 1 b1--b的第一个值 b 3 b3:b的第三个值
2017-06-03 02:43:11
850
原创 Centos下搭建SVN服务器
Subversion是一个自由,开源的版本控制系统。Subversion将文件存放在中心版本库里。这个版本库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况。这样就可以籍此将数据恢复到以前的版本,并可以查看数据的更改细节。Subversion是Apache基金会下的一个项目,官网 https://subversion.apache.org/ 。1.安装yum -y insta
2017-05-22 15:02:32
300
原创 Ubuntu 下配置vsftpd实现FTP服务器
1. vsftpd是什么都不知道安装了个啥东西,那就没意思了,所以先去了解下什么是vsftpd。vsftpd意思为“very secure FTP daemon(非常安全的FTP进程)”,当然只有更安全没有最安全。 那它到底安全在哪里呢,主要体现在以下两点:权限控制,vsftpd以一般用户登录,用户权限相对较小,对于系统就越安全,对于用户需要的系统级指令大部分被整合到vsftpd中了,用户不需要
2017-05-22 15:01:54
953
原创 CentOS 下gogs搭建
步骤新建用户下载源码进行编译/下载预编译二进制文件安装调整配置配置nginx反向代理添加服务及开机启动注意,这里默认你已经安装并配置好了MySQL和nginx,如果没有,请自行查找如何安装和配置这些依赖。当然你也可以使用SQLite数据库。新建用户Gogs默认以git用户运行,因此我们需要建立一个git用户$ sudo adduser git #建立git用户$ su git
2017-05-22 15:01:12
499
原创 MySql 存在记录就更新,不存在就新增
1、插入一条数据,存在就更新,不存在就更新(必须现有唯一键) 使用insert ignore语句:insert ignore into table(col1,col2) values ('a','b'); 例如插入数据:insert ignore into user_info (last_name,first_name) values ('LeBron','Ja
2017-04-28 14:09:35
15500
转载 MySQL 从一张表update字段到另外一张表中
使用MySQL 4.0版或更高更新您可以通过加入两个或多个表一起一表;通过加入两个表连同您可以更新一个表的记录在相关领域的总部设在另一个表。先来几个简单的示例Solution 1: 1列?123updatestudent s, city c sets.city
2017-04-26 19:47:56
548
转载 分析 fastcgi_temp 错误以及 Nginx 的 Buffer 机制
文章来源:http://www.phpvim.net/os/ubuntu/fastcgi_temp_error_and_nginx_buffer.html最近在使用 phpMyAdmin 的时候,发现一个很让人蛋疼的问题,在每次修改表结构时,页面没有载入完成就自动停止了。因为一直使用 svn/trunk 版本的 PMA,开始以为是程序的问题,但是换成 stable 版本后,问题
2017-04-17 14:05:36
3990
原创 mysql数据库连接,No such file or directory 错误
今天搭建新站点,发现通过数据库配置连接数据库,连接不上,返回No such file or directory 错误。解决方法: 1、确定是mysqli_connect()和mysqli_pconnect()的问题,故障现象就是函数返回空,而mysqli_error()返回”No such file or directory”。 2、写个phpinfo页面,找到mysql.default_so
2017-04-04 19:10:53
12169
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人