摘要: varnish / squid / nginx cache 有什么不同? SQUID 是功能最全面的,但是架构太老,性能不咋的 Varnish 是内存缓存,速度一流,但是内存缓存也限制了其容量,缓存页面和图片一般是挺好的Nginx 本来是反向代理/web服务器,用了插件可以做做这个副业,但是本身不支 阅读全文
posted @ 2018-02-04 17:05 wwlww 阅读(103) 评论(0) 推荐(0)
摘要: 图解正向代理、反向代理、透明代理 一、正向代理(Forward Proxy) 一般情况下,如果没有特别说明,代理技术默认说的是正向代理技术。关于正向代理的概念如下: 正向代理(forward)是一个位于客户端【用户A】和原始服务器(origin server)【服务器B】之间的服务器【代理服务器Z】 阅读全文
posted @ 2018-02-04 17:05 wwlww 阅读(334) 评论(0) 推荐(0)
摘要: Ubuntu安装php 记录下主要的流程和遇到的坑。 首先官网下载php,http://php.net/downloads.php,我用的是5.6.25的版本: wget http://cn2.php.net/distributions/php-5.6.25.tar.gz 下载后,解压到服务器随意目 阅读全文
posted @ 2018-02-04 17:04 wwlww 阅读(392) 评论(0) 推荐(0)
摘要: crontab命令 前一天学习了 at 命令是针对仅运行一次的任务,循环运行的例行性计划任务,linux系统则是由 cron (crond) 这个系统服务来控制的。Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的。另外, 由于使用者自己也可以设置计划任务,所以, Linu 阅读全文
posted @ 2018-02-04 16:54 wwlww 阅读(141) 评论(0) 推荐(0)
摘要: 解决 Cannot find OpenSSL's <evp.h> yum install openssl openssl-devel ln -s /usr/lib64/libssl.so /usr/lib/ yum install openssl openssl-devel ln -s /usr/l 阅读全文
posted @ 2018-02-04 16:53 wwlww 阅读(1961) 评论(1) 推荐(1)
摘要: PHP编译安装时常见错误解决办法 This article is post on https://coderwall.com/p/ggmpfa configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 阅读全文
posted @ 2018-02-04 16:52 wwlww 阅读(284) 评论(0) 推荐(0)
摘要: php-fpm启动,重启,终止操作 最近安装了mysqli扩展,重启了nginx后,phpinfo()没有显示出mysqli,后来搞不出原因,直接使用了pdo连接数据库。直到今天安装redis后phpinfo()没有显示redis,内心那一万只奔腾的草泥马终于爆发,狂找办法,才知道是php-fpm没 阅读全文
posted @ 2018-02-04 16:49 wwlww 阅读(2997) 评论(0) 推荐(0)
摘要: Centos 安装SVN centos(我这里使用的是CentOS7)下yum命令即可方便的完成安装 $ sudo yum install subversion 测试安装是否成功: $ svnserve --version 2. 建立版本库 创建svn数据目录(subversion默认是把/var/ 阅读全文
posted @ 2018-02-04 16:42 wwlww 阅读(252) 评论(0) 推荐(0)
摘要: Too many levels of symbolic links 问题 使用npm安装pm2 ,发现不能全局使用pm2, 于是想到去 ln -s node_modules/pm2/bin/pm2 /usr/bin/pm2 但是当执行pm2 命令的时候, 发现出现 Too many levels o 阅读全文
posted @ 2018-02-04 16:41 wwlww 阅读(5267) 评论(0) 推荐(0)
摘要: 关闭 SQL Server Reporting Services 服务 关闭 SQL Server Reporting Services 服务 关闭 SQL Server Reporting Services 服务 阅读全文
posted @ 2018-02-04 16:40 wwlww 阅读(767) 评论(0) 推荐(0)
摘要: 如何让网站变灰 今天给大家分享一个web前端的小技巧哦,就是如何在公共哀悼纪念日,让网站变为黑白颜色。其实很多方法有css实现,和js实现的。网上都有的,js有js的特点,css有css优点,当然缺点也是存在。 1.超兼容IE,火狐firefox,谷歌的css滤镜 1 2 3 4 5 6 7 8 9 阅读全文
posted @ 2018-02-04 16:39 wwlww 阅读(241) 评论(0) 推荐(0)
摘要: 虽然PHP是世界上最好的语言,但是也有一些因为弱类型语言的安全性问题出现。WordPress历史上就出现过由于PHP本身的缺陷而造成的一些安全性问题,如CVE-2014-0166 中的cookie伪造就是利用了PHP Hash比较的缺陷。 当然一般这种情况实战中用到的不是很多,但是在CTF竞赛中却是 阅读全文
posted @ 2018-02-04 16:38 wwlww 阅读(636) 评论(0) 推荐(0)
摘要: jQuery使用ajax跨域请求获取数据 跨域是我在日常面试中经常会问到的问题,这词在前端界出现的频率不低,主要原因还是由于安全限制(同源策略, 即JavaScript或Cookie只能访问同域下的内容),因为我们在日常的项目开发时会不可避免的需要进行跨域操作,所以跨域能力也算是前端工程师的基本功之 阅读全文
posted @ 2018-02-04 16:38 wwlww 阅读(927) 评论(0) 推荐(0)
摘要: setTimeout(call,0)作用 经常看到setTimeout延时0ms的javascript代码,感到很迷惑,难道延时0ms和不延时不是一个道理吗?后来通过查资料以及实验得出以下两个作用,可能还有作用我还不知道,希望得知的朋友在后面评论上不吝指出。 1、实现javascript的异步;正常 阅读全文
posted @ 2018-02-04 16:37 wwlww 阅读(706) 评论(0) 推荐(0)
摘要: CSS 高级布局技巧 随着 IE8 逐渐退出舞台,很多高级的 CSS 特性都已被浏览器原生支持,再不学下就要过时了。 用 :empty 区分空元素 兼容性:不支持 IE8 Demo 假如我们有以上列表: <div class="item">a</div> <div class="item">b</d 阅读全文
posted @ 2018-02-04 16:36 wwlww 阅读(188) 评论(0) 推荐(0)
摘要: 前端Yslow的23个优化原则 最常遇见的前端优化问题。 Yslow是雅虎开发的基于网页性能分析浏览器插件,可以检测出网页的具体性能值,并且有著名的Yslow 23条优化规则,这23条,就够我们玩的了。 1. 减少HTTP请求次数 尽量合并图片、CSS、JS。比如加载一个页面,如果有5个css文件的 阅读全文
posted @ 2018-02-04 16:17 wwlww 阅读(266) 评论(0) 推荐(0)
摘要: 前端:将网站打造成单页面应用SPA 前言 不知你有没有发现,像Github、百度、微博等这些大站,已经不再使用普通的a标签做跳转了。他们大多使用Ajax请求替代了a标签的默认跳转,然后使用HTML5的新API修改了Url,你可以在F12的Network面板里发现这个秘密。这项技术并没有特别标准的学名 阅读全文
posted @ 2018-02-04 16:16 wwlww 阅读(200) 评论(0) 推荐(0)
摘要: 网站统计中的数据收集原理及实现 网站数据统计分析工具是网站站长和运营人员经常使用的一种工具,比较常用的有谷歌分析、百度统计和腾讯分析等等。所有这些统计分析工具的第一步都是网站访问数据的收集。目前主流的数据收集方式基本都是基于javascript的。本文将简要分析这种数据收集的原理,并一步一步实际搭建 阅读全文
posted @ 2018-02-04 16:15 wwlww 阅读(215) 评论(0) 推荐(0)
摘要: Javascript 严格模式详解 一、概述 除了正常运行模式,ECMAscript 5添加了第二种运行模式:"严格模式"(strict mode)。顾名思义,这种模式使得Javascript在更严格的条件下运行。 设立"严格模式"的目的,主要有以下几个: - 消除Javascript语法的一些不合 阅读全文
posted @ 2018-02-04 16:14 wwlww 阅读(128) 评论(0) 推荐(0)
摘要: var s=+newDate(); 解释如下:=+是不存在的; +new Date()是一个东西; +相当于.valueOf(); 看到回复补充一下.getTime()这个也是得到毫秒数 //4个结果一样返回当前时间的毫秒数alert(+new Date());alert(+new Date);va 阅读全文
posted @ 2018-02-04 16:14 wwlww 阅读(183) 评论(0) 推荐(0)
摘要: jQuery的12种选择器 1、#id : 根据给定的ID匹配一个元素 显示(用加粗的代替颜色): 这是第一个p标签 2、* : 匹配所有元素,多用于结合上下文来搜索 显示 : 这是p标签 这是div标签 3、多选择器selector1,selector2,selectorN : 指定任意多个选择器 阅读全文
posted @ 2018-02-04 16:13 wwlww 阅读(255) 评论(0) 推荐(0)
摘要: 前端知识点总结 知识点一:DOCTYPE和浏览器渲染模式 文档类型,一个文档类型标记是一种标准通用标记语言的文档类型声明,它的目的是要告诉标准通用标记语言解析器,它应该使用什么样的文档类型定义(DTD)来解析文档。Doctype还会对浏览器的渲染模式产生影响,不同的渲染模式会影响到浏览器对于 CSS 阅读全文
posted @ 2018-02-04 16:13 wwlww 阅读(178) 评论(0) 推荐(0)
摘要: <!DOCTYPE>声明位于位于HTML文档中的第一行,处于 <html> 标签之前。告知浏览器的解析器用什么文档标准解析这个文档。DOCTYPE不存在或格式不正确会导致文档以兼容模式呈现。 标准模式的排版 和JS运作模式都是以该浏览器支持的最高标准运行。在兼容模式中,页面以宽松的向后兼容的方式显示 阅读全文
posted @ 2018-02-04 16:12 wwlww 阅读(165) 评论(0) 推荐(0)
摘要: Closure php5.3有一个非常赞的新特性,那就是支持匿名函数(闭包)。匿名函数可用于动态创建函数,并保存到一个变量中。举个栗子: $func = function(){ exit('Hello world!!'); };//这里必须要有;结尾 $func(); 复制代码 等效于 functi 阅读全文
posted @ 2018-02-04 16:11 wwlww 阅读(172) 评论(0) 推荐(0)
摘要: PHP 中 16 个魔术方法详解 前言 PHP中把以两个下划线__开头的方法称为魔术方法(Magic methods),这些方法在PHP中充当了举足轻重的作用。 魔术方法包括: __construct(),类的构造函数 __destruct(),类的析构函数 __call(),在对象中调用一个不可访 阅读全文
posted @ 2018-02-04 16:10 wwlww 阅读(655) 评论(0) 推荐(0)
摘要: 页面静态化常用方法 常说的页面静态化分为两种,一种是伪静态,即url 重写,一种是真静态化。我们以真静态化为主来讲讲。 什么是PHP静态化 PHP静态化的简单理解就是使网站生成页面以静态HTML的形式展现在访客面前,PHP静态化分纯静态化和伪静态化,两者的区别在于PHP生成静态页面的处理机制不同。为 阅读全文
posted @ 2018-02-04 15:46 wwlww 阅读(214) 评论(0) 推荐(0)
摘要: PHP程序员应该如何提升 尤其不认可W3school之类的东西,不够深度,理解不深,比起这个更建议看官方文档,中文不清楚,看英文的。 入门视频:入门视频推荐:哈佛大学公开课:构建动态网站Beginner PHP and MySQL Tutorial另,java版的 斯坦福大学公开课:编程方法学推荐看 阅读全文
posted @ 2018-02-04 15:46 wwlww 阅读(514) 评论(0) 推荐(1)
摘要: PHP实现四种基本排序算法 前提:分别用冒泡排序法,快速排序法,选择排序法,插入排序法将下面数组中的值按照从小到大的顺序进行排序。 $arr(1,43,54,62,21,66,32,78,36,76,39); 1. 冒泡排序 思路分析:在要排序的一组数中,对当前还未排好的序列,从前往后对相邻的两个数 阅读全文
posted @ 2018-02-04 15:45 wwlww 阅读(138) 评论(0) 推荐(0)
摘要: include和require的区别 准备在一个PHP的开源程序上做点二次开发,借此机会想对PHP进行一下系统的学习。曾经也大概的了解过一点PHP,但因为工作中一直没有用到这门语言,所以慢慢也放下了。走了这么久的弯路才明白,项目驱动是最好的学习方式。只有当你需要用到一门语言的时候,去学习它才会有比较 阅读全文
posted @ 2018-02-04 15:45 wwlww 阅读(19924) 评论(3) 推荐(2)
摘要: 修改PHP上传文件大小限制 修改PHP上传文件大小限制的方法 1. 一般的文件上传,除非文件很小.就像一个5M的文件,很可能要超过一分钟才能上传完.但在php中,默认的该页最久执行时间为 30 秒.就是说超过30秒,该脚本就停止执行.这就导致出现 无法打开网页的情况.这时我们可以修改 max_exe 阅读全文
posted @ 2018-02-04 15:44 wwlww 阅读(155) 评论(0) 推荐(0)
摘要: 如何修改PHP的memory_limit限制 在运行PHP程序,通常会遇到“Fatal Error: Allowed memory size of xxxxxx bytes exhausted”的错误, 这个意味着PHP脚本使用了过多的内存,并超出了系统对其设置的允许最大内存。解决这个问题,首先需要 阅读全文
posted @ 2018-02-04 15:44 wwlww 阅读(26428) 评论(1) 推荐(0)
摘要: 理解JWT(JSON Web Token)认证 最近想做个小程序,需要用到授权认证流程。以前项目都是用的 OAuth2 认证,但是Sanic 使用OAuth2 不太方便,就想试一下 JWT 的认证方式。这一篇主要内容是 JWT 的认证原理,以及python 使用 jwt 认识的实践。 几种常用的认证 阅读全文
posted @ 2018-02-04 15:43 wwlww 阅读(3042) 评论(0) 推荐(0)
摘要: PHP毫秒 php的毫秒是没有默认函数的,但提供了一个microtime()函数,该函数返回包含两个元素,一个是秒数,一个是小数表示的毫秒数,借助此函数,可以很容易定义一个返回毫秒数的函数,例如: /* * 获取时间差,毫秒级 */ function get_subtraction() { $t1  阅读全文
posted @ 2018-02-04 15:43 wwlww 阅读(259) 评论(0) 推荐(0)
摘要: function R() { $code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; $rand = $code[rand(0,25)] .strtoupper(dechex(date('m'))) .date('d').substr(time(),-5) .substr(... 阅读全文
posted @ 2018-02-04 15:42 wwlww 阅读(189) 评论(0) 推荐(0)
摘要: 传统的B/S结构的应用程序,都是采用”客户端拉”结束来实现客户端和服务器端的数据交换。 本文将通过结合Ticks(可以参看我的另外一篇文章:关于PHP你可能不知道的-PHP的事件驱动化设计),来实现一个服务器推的PHP聊天室简单构想。 PHPer,尤其是用过set_cookie, header的,一 阅读全文
posted @ 2018-02-04 15:41 wwlww 阅读(249) 评论(0) 推荐(0)
摘要: COOKIE和SESSION区别 1,session 在服务器端,cookie 在客户端(浏览器)2,session 默认被存在在服务器的一个文件里(不是内存)3,session 的运行依赖 session id,而 session id 是存在 cookie 中的,也就是说,如果浏览器禁用了 co 阅读全文
posted @ 2018-02-04 15:40 wwlww 阅读(151) 评论(0) 推荐(0)
摘要: 一个网站图标引发的血案!绕过同源策略,判断你是否登录了某网站 前言 我要告诉大家的是,在没有得到你同意的情况下,目前大多数主流的网络平台都会泄漏你的登录状态。无论你当前是否进行了登录操作,攻击者都可以检测到你电脑登录了那些网络平台。而且目前有很多平台可以提供人口统计以及个性分析之类的服务,所以攻击者 阅读全文
posted @ 2018-02-04 15:39 wwlww 阅读(518) 评论(0) 推荐(0)
摘要: 优秀的渗透测试报告标准 漏洞标题 标题描述:标题可简明扼要说明问题,描述语言规范化。如“testasp.vulnweb.com站showforum.asp请求存在SQL注入漏洞”“testasp.vulnweb.com站查看订单处存在越权漏洞” 基本信息 漏洞类型:填写信息准确无误 漏洞等级:填写信 阅读全文
posted @ 2018-02-04 15:38 wwlww 阅读(563) 评论(0) 推荐(0)
摘要: ReDoS(Regular expression Denial of Service) 正则表达式拒绝服务攻击。开发人员使用了正则表达式来对用户输入的数据进行有效性校验, 当编写校验的正则表达式存在缺陷或者不严谨时, 攻击者可以构造特殊的字符串来大量消耗服务器的系统资源,造成服务器的服务中断或停止。 阅读全文
posted @ 2018-02-04 15:37 wwlww 阅读(7678) 评论(0) 推荐(0)
摘要: 一、背景 今天看了一篇基于约束条件的SQL攻击的文章,感觉非常不错,但亲自实践后又发现了很多问题,虽然利用起来有一定要求,不过作者的思想还是很值得学习的。原文中的主旨思想是利用数据库对空格符的特殊处理方式来达到水平越权的目的。以下内容以MySQL为例,其它数据库可能也存在这个问题(文章作者实验了My 阅读全文
posted @ 2018-02-04 15:34 wwlww 阅读(315) 评论(0) 推荐(0)
摘要: 信息收集: 域名/IP 子域名列表 whois: 注册地址,注册人,联系方式等 whois反查: 同ip有哪些站点(旁注),同一个注册人注册了哪些域名 社工注册人信息 子域名列表 whois: 注册地址,注册人,联系方式等 whois反查: 同ip有哪些站点(旁注),同一个注册人注册了哪些域名 社工 阅读全文
posted @ 2018-02-04 15:02 wwlww 阅读(798) 评论(0) 推荐(0)
摘要: 一、GPC 二、特性 三、危险函数 代码执行 文件包含 文件读取 文件上传 命令执行 变量覆盖 变量的编码与解码 跨站脚本 反序列化 枚举 四、阅读技巧 五、新技能 $a = $_GET['file']; include $a.'.html.php'; 在可以控制协议的情况下,首先新建一个hello 阅读全文
posted @ 2018-02-04 15:01 wwlww 阅读(197) 评论(0) 推荐(0)
摘要: POC: $WshShell = New-Object -comObject WScript.Shell $Shortcut = $WshShell.CreateShortcut("desktop\desktoppayload.lnk") // 在桌面创建快捷方式按钮 $Shortcut.Targe 阅读全文
posted @ 2018-02-04 15:00 wwlww 阅读(248) 评论(0) 推荐(0)
摘要: javascript脚本混淆 脚本病毒是一个一直以来就存在,且长期活跃着的一种与PE病毒完全不同的一类病毒类型,其制作的门槛低、混淆加密方式的千变万化,容易传播、容易躲避检测,不为广大网民熟知等诸多特性,都深深吸引着各色各样的恶意软件制作者 … 小到一个不起眼的lnk快捷方式,大到一个word文档, 阅读全文
posted @ 2018-02-04 15:00 wwlww 阅读(818) 评论(0) 推荐(0)
摘要: 秒杀系统架构优化思路 本文曾在“架构师之路”上发布过,近期支援Qcon-AS大会,在微信群里分享了该话题,故对原文进行重新整理与发布。 一、秒杀业务为什么难做 1)im系统,例如qq或者微博,每个人都读自己的数据(好友列表、群列表、个人信息); 2)微博系统,每个人读你关注的人的数据,一个人读多个人 阅读全文
posted @ 2018-02-04 14:59 wwlww 阅读(168) 评论(0) 推荐(0)
摘要: 面向对象是相对于面向过程而言的。面向过程语言是一种基于功能分析的、以算法为中心的程序设计方法;而面向对象是一种基于结构分析的、以数据为中心的程序设计思想。早在面向过程语言时代,有一句话说:程序=算法+数据结构。而现在在面向对象语言时代,这句话变为:程序= 对象+消息。对象:万物皆对象; 消息:指对象 阅读全文
posted @ 2018-02-04 14:58 wwlww 阅读(927) 评论(0) 推荐(0)
摘要: 一分钟了解负载均衡的一切 什么是负载均衡 负载均衡(Load Balance)是分布式系统架构设计中必须考虑的因素之一,它通常是指,将请求/数据【均匀】分摊到多个操作单元上执行,负载均衡的关键在于【均匀】。 常见的负载均衡方案 常见互联网分布式架构如上,分为客户端层、反向代理nginx层、站点层、服 阅读全文
posted @ 2018-02-04 14:58 wwlww 阅读(158) 评论(0) 推荐(0)
摘要: 什么是MVC (模型 视图 控制器)? mvc是一个架构模式,它分离表现与交互。它被分为3个核心部件:模型、视图、控制器。 下面是每一个部件的分工: 1)视图是用户看到的并与之交互的界面 2)模型表示业务的数据,并提供数据给视图 3)控制器接受用户输入并调用模型和视图去完成用户的需求 MVC的完整流 阅读全文
posted @ 2018-02-04 14:57 wwlww 阅读(218) 评论(0) 推荐(0)
摘要: Case具有两种格式。简单Case函数和Case搜索函数。 --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女'ELSE '其他' END --Case搜索函数 CASE WHEN sex = '1' THEN '男' WHEN sex =  阅读全文
posted @ 2018-02-04 14:56 wwlww 阅读(455) 评论(0) 推荐(0)