- 博客(51)
- 收藏
- 关注
原创 解决lnmp环境nginx无法解析php文件,html正常解析
lnmp环境nginx无法解析php文件,html正常解析。出现nginx无法解析php显示404 Not Found一键安装lnmp环境,内含nginx。首先先安装php-fpm,yum install php-fpmservice php-fpm start #启动 php-fpm然后修改nginx配置文件nginx.conf 识别php vi /usr/lo
2017-09-29 15:13:44 6683 1
原创 git自动部署
1.在服务器上创建一个git创库git --bate init mynewpro ./2.切到mynewpro目录中3.切到hooks中4.如果没有post-update就使用命令cp post-update.sample post-update5.vim编辑post-update加入以下代码--work-tree=/usr/local/nignx-
2017-09-28 16:26:40 295
原创 Linux基础知识:网络属性配置
当我们拥有一个崭新的计算机的时候,第一步恐怕都是迫不及待的下载各种软件,看视频,听音乐等,这里的关键的一点是要有网络。现在的个人计算机大部分都是Windows操作系统的,接入网络网络很简单,插上网线也许就能上网了,最麻烦不过找到网络和共享中心手动配置一个ip地址、网关地址和dns服务器就能上网了,当然这都是得益于图形化界面。但是现在很多的服务器都是Linux操作系统且没有图形化的界面,这时候我们就
2017-09-25 15:29:19 435
原创 linux中各个目录中的作用
作为一个linux新手,每次搭建开发环境还是比较头疼的,各种问度娘,主要就是不清楚linux下各个目录的作用,不知道软件该安装在什么目录下,如果随便安装在别的目录下,以后查找起来很费事,所以简单记录下各个目录的作用。bin:是Binary的缩写,该目录存放着最常用的命令boot:主要存放linux系统启动时需要的核心文件,包括一些连接文件及镜像文件dev:是Device(设备)的缩写,存放
2017-09-25 15:08:35 288
转载 面试题
csrf是什么:CSRF跨站点请求伪造,1. 用户C打开浏览器,访问受信任网站A,输入用户名和密码请求登录网站A;2. 在用户信息通过验证后,网站A产生Cookie信息并返回给浏览器,此时用户登录网站A成功,可以正常发送请求到网站A;3. 用户未退出网站A之前,在同一浏览器中,打开一个TAB页访问网站B;4. 网站B接收到用户请求后,返回一些攻击性代码,并发
2017-09-18 21:06:41 665
原创 memcache分布式 [一致性hash算法] 的php实现
memcache分布式 [一致性hash算法] 的php实现 最近在看一些分布式方面的文章,所以就用php实现一致性hash来练练手,以前一般用的是最原始的hash取模做 分布式,当生产过程中添加或删除一台memcache都会造成数据的全部失效,一致性hash就是为了解决这个问题,把失效数据降到最低,相关资料可以 google一下!php实现效率有一定的缺失,如果要高效率,
2017-09-14 12:25:21 285
原创 haproxy+keepalived实现高可用负载均衡
haproxy+keepalived实现高可用负载均衡 软件负载均衡一般通过两种方式来实现:基于操作系统的软负载实现和基于第三方应用的软负载实现。LVS就是基于Linux操作系统实现的一种软负载,HAProxy就是开源的并且基于第三应用实现的软负载。HAProxy相比LVS的使用要简单很多,功能方面也很丰富。当 前,HAProxy支持两种主要的代理模式:"tcp"也即4层(
2017-09-14 12:24:28 260
原创 高性能Mysql主从架构的复制原理及配置详解
高性能Mysql主从架构的复制原理及配置详解解决方案: 使用MySQL 5.6 基于数据库的多线程复制;从主库中或者缓存中读取对实时性要求较高的数据。 1 复制概述 Mysql内建的复制功能是构建大型,高性能应用程序的基础。将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它主机(slaves)上
2017-09-14 12:23:38 308
原创 聚簇索引与非聚簇索引的区别
聚簇索引与非聚簇索引的区别 在《数据库原理》里面,对聚簇索引的解释是:聚簇索引的顺序就是数据的物理存储顺序,而对非聚簇索引的解释是:索引顺序与数据物理排列顺序无关。正式因为如此,所以一个表最多只能有一个聚簇索引。聚簇索引的叶节点就是数据节点,而非聚簇索引的叶节点仍然是索引节点,并保留一个链接指向对应数据块。聚簇索引主键的插入速度要比非聚簇索引主键的插入速度慢很多。
2017-09-14 12:22:52 1865
原创 聚簇索引和非聚簇索引详解
聚簇索引和非聚簇索引详解 聚簇索引是一种数据存储方式,它实际上是在同一个结构中保存了B+树索引和数据行,InnoDB表是按照聚簇索引组织的(类似于Oracle的索引组织表)。InnoDB通过主键聚簇数据,如果没有定义主键,会选择一个唯一的非空索引代替,如果没有这样的索引,会隐式定义个主键作为聚簇索引。下图形象说明了聚簇索引表(InnoDB)和非聚簇索引(MyIS
2017-09-14 12:22:17 634
原创 常用数据结构之一队列
常用数据结构之一队列 队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。队列的数据元素又称为队列元素。在队列中插入一个队列元素称为入队,从队列中删除一个队列元素成为出队。因为队列只允许
2017-09-14 12:21:32 537
原创 缓存Redis与Memcached的比较
缓存Redis与Memcached的比较 Memcached是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载. 它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度. Memcached基于一个存储键/值对的hashmap。 Redis是一个key-value存储系统,和Mem
2017-09-14 12:20:11 326
原创 Redis与Memcached的区别
Redis与Memcached的区别 传统MySQL+ Memcached架构遇到的问题 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,和访问量的持续增长,我们遇到了很多问题: 1.MySQL需要不断进行拆库拆表,Memcached也需不断跟着扩
2017-09-14 12:19:31 268
转载 Redis详解
Redis详解 Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。定义redis是一个key-value存储系统。和Memcached类似
2017-09-14 12:18:19 212
原创 Mysql数据库锁定机制详细介绍
Mysql数据库锁定机制详细介绍 前言为了保证数据的一致完整性,任何一个数据库都存在锁定机制。锁定机制的优劣直接应想到一个数据库系统的并发处理能力和性能,所以锁定机制的实现也就成为了各种数据库的核心技术之一。本章将对MySQL中两种使用最为频繁的存储引擎MyISAM和Innodb各自的锁定机制进行较为详细的分析。MySQL锁定机制简介数据库锁定机制简单来说就
2017-09-14 12:15:23 295
原创 PHP命名空间概述
PHP命名空间概述 (PHP 5 >= 5.3.0, PHP 7)什么是命名空间?从广义上来说,命名空间是一种封装事物的方法。在很多地方都可以见到这种抽象概念。例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮演了命名空间的角色。具体举个例子,文件 foo.txt 可以同时在目录/home/greg 和 /home/other 中存在,但在同一个目录中不能存
2017-09-14 11:46:08 166
原创 详解PHP实现定时任务的五种方法
详解PHP实现定时任务的五种方法 定时运行任务对于一个网站来说,是一个比较重要的任务,比如定时发布文档,定时清理垃圾信息等,现在的网站大多数都是采用PHP动态语言开发的,而对于PHP的实现决定了它没有Java和.Net这种AppServer的概念,而http协议是一个无状态的协议,PHP只能被用户触发,被调用,调用后会自动退出内存,没有常驻内存。如果非要PHP去实现定时任务
2017-09-14 11:43:54 248
原创 THINKPHP3.2命名空间
THINKPHP3.2命名空间 3.2版本全面采用命名空间方式定义和加载类库文件,有效的解决多个模块之间的冲突问题,并且实现了更加高效的类库自动加载机制。由于新版完全采用了命名空间的特性,因此只需要给类库正确定义所在的命名空间,而命名空间的路径与类库文件的目录一致,那么就可以实现类的自动加载。 例如,Org\Util\File类的定义为:namespaceOrg
2017-09-14 11:41:25 409
原创 常见网络攻击类型
常见网络攻击类型 SQL注入: 所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,比如先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询字符暴出的,这类表单特别容易受到SQL注入式攻击. 根据相关技术原理,SQL注入可以分为平台层注入和代码层注入。前者由不安全
2017-09-14 11:40:23 2587 1
原创 分布式拒绝服务攻击(DDOS)
分布式拒绝服务攻击(DDOS) 分布式拒绝服务(DDoS:Distributed Denial of Service)攻击指借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DDoS攻击,从而成倍地提高拒绝服务攻击的威力。通常,攻击者使用一个偷窃帐号将DDoS主控程序安装在一个计算机上,在一个设定的时间主控程序将与大量代理程序通讯,代理程序已经被安装在网络上
2017-09-14 11:39:01 2573
原创 SYN攻击(DDOS攻击的一种)
SYN攻击(DDOS攻击的一种) SYN攻击是黑客攻击的手段。SYN洪泛攻击的基础是依靠TCP建立连接时三次握手的设计。第三个数据包验证连接发起人在第一次请求中使用的源IP地址上具有接受数据包的能力,即其返回是可达的。SYN攻击概述编辑据统计,在所有黑客攻击事件中,SYN攻击是最常见又最容易被利用的一种攻击手法。相信很多人还记得2000年YAHOO网站遭受的
2017-09-14 11:37:00 725
原创 对称加密与非对称加密优缺点详解
对称加密与非对称加密优缺点详解 对称加密:双方使用的同一个密钥,既可以加密又可以解密,这种加密方法称为对称加密,也称为单密钥加密。优点:速度快,对称性加密通常在消息发送方需要加密大量数据时使用,算法公开、计算量小、加密速度快、加密效率高。缺点:在数据传送前,发送方和接收方必须商定好秘钥,然后 使双方都能保存好秘钥。其次如果一方的秘钥被泄露,那么加密信息也就不安全了。
2017-09-14 11:35:49 9622
原创 MySQL表的四种分区类型
MySQL表的四种分区类型 一、什么是表分区通俗地讲表分区是将一大表,根据条件分割成若干个小表。mysql5.1开始支持数据表分区了。 如:某用户表的记录超过了600万条,那么就可以根据入库日期将表分区,也可以根据所在地将表分区。当然也可根据其他的条件分区。二、为什么要对表进行分区为了改善大型表以及具有各种访问模式的表的可伸缩性,可管理性和提高数据库
2017-09-14 11:34:13 203
原创 oAuth
oAuth OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是OAUTH的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此OAUTH是安全的。oAuth是Open Authorization的简写。定义编辑OAUTH协议为用户资源的授权提
2017-09-14 11:32:31 236
原创 thinkphp框架中session的使用
thinkphp框架中session的使用 本文实例讲述了ThinkPHP中Session用法。分享给大家供大家参考。具体如下:在ThinkPHP封装了Session类,用户可以直接使用,常用的方法有:Session::set(name, value):注册 session 。Session::is_set(name):检查Session的值是否设置。
2017-09-14 11:30:51 291
转载 Apache 与 Nginx 比较
Nginx轻量级,采用 C 进行编写,同样的 web 服务,会占用更少的内存及资源抗并发,nginx 以 epoll and kqueue 作为开发模型,处理请求是异步非阻塞的,负载能力比 apache 高很多,而 apache 则是阻塞型的。在高并发下 nginx 能保持低资源低消耗高性能 ,而 apache 在 PHP 处理慢或者前端压力很大的情况下,很容易出现进程数飙升,
2017-09-12 20:20:30 178
原创 反向ajax实现即时聊天程序的业务流程
常规ajax是指客户端->服务端反向ajax是指服务端->客户端以下是文件:1.client.php用户窗口屌丝窗口$(function(){$("#btn").on("click",function(){var content=$("#textarea2").val();i
2017-09-08 11:55:56 475
原创 给任意一段URL,取出该URL中包含的扩展名
如“http://www.sina.com.cn/abc/de/fg.php?id=1”,返回.php或php以下是我总结的三种方法:1.pathinfo()//取出扩展名及参数 $temp = pathinfo($url_path,PATHINFO_EXTENSION); //找到扩展名 $temp = explode("?",$temp)
2017-09-07 12:16:19 217
原创 SQL注入
轻则数据遭到泄露,重则服务器被拿下1.SQL注入产生的原因:程序开发过程中不注意规范书写sql语句和对特殊字符进行过滤,导致客户端可以通过全局变量POST和GET提交一些sql语句正常执行。2.SQL注入的步骤:a.寻找注入点(如:登录界面,留言板)b.构造SQL语句(如: ' or 1=1# )c.将sql语句发送给数据库管理系统(DBMS)d.DBMS接
2017-09-07 12:14:46 202
原创 XSS攻击
XSS是跨站脚本攻击,是为了避免和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS,XSS是一种在Web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其他用户使用的页面中比如这些代码包括HTML代码和客户端脚本。攻击者利用XSS漏洞旁路掉访问控制-例如同源策略,这种类型的漏洞由于被黑客用来编写危害性大的网络钓鱼
2017-09-07 12:12:49 248
原创 框架中的单入口和多入口
1.多入口: 定义:就是通过访问不同的文件来完成用户请求。通过访问不同的php文件运行相对应的功能。比如我们刚开始学习php的时候,我们做一个项目的时候都会这样index.php 网站首页list.php?page=5内容列表页info.php?id=12内容详细页login.php用户登录页 对于这个项目来说这其实就是一个多入口
2017-09-07 12:10:47 3812
原创 mysql事务回滚机制概述
应用场景: 银行取钱,从ATM机取钱,分为以下几个步骤 1 登陆ATM机,输入密码; 2 连接数据库,验证密码; 3 验证成功,获得用户信息,比如存款余额等; 4 用户输入需要取款的金额,按下确认键; 5 从后台数据库中减掉用户账户上的对应金额; 6 ATM吐出钱; 7 用户把钱拿走。 对于上面的取钱这个
2017-09-07 12:05:34 11763
原创 简述memcache的理解和工作原理
Memcached:是缓存在内存中,也就是说服务器重启之后就会消失。Memcached是高性能的分布式内存对象缓存系统,用于web应用以减轻数据库的负载,它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。who在用memcached:国外:yahoo,facebook.tw
2017-09-07 12:03:22 786
原创 解释MySQL外连接、内连接与自连接的区别
先说什么是交叉连接: 交叉连接又叫笛卡尔积,它是指不使用任何条件,直接将一个表的所有记录和另一个表中的所有记录一一匹配。笛卡尔积又叫笛卡尔乘积,是由一个笛卡尔人提出来的,简单地来说就是两个集合相乘的结果。直观的说 集合A{a1,a2,a3} 集合B{b1,b2} 他们的笛卡尔积就是A*B ={(a1,b1),(a1,b2),(a2,b1),(a2,b2),(a3,b1),(a3,b2)
2017-09-07 12:01:17 5680 1
原创 简述在MySQL数据库中MyISAM和InnoDB的区别
在mysql客户我们可以使用这个命令来查看MYSQL支持的引擎:show engines;MySQL数据库区别于其他数据库的最重要的特点就是其插件式的表存储引擎。切记:存储引擎是基于表的,而不是数据库。InnoDB与MyISAM的区别:InnoDB存储引擎: 主要面向OLTP(Online Transaction Processing,在线事务处理)方面的应用,是第
2017-09-07 11:58:42 1505
原创 对于关系型数据库中的索引的基本理解
说白了索引就是一个查找问题索引是对数据库表中的一列或者说是多列进行排序的一种结构,使用索引可以快速访问数据库表中的特定信息。索引的一个主要目的就是加快检索表中数据的方法例子:这样一个查询语句selecr * from table1 where id=1000; 如果没有索引的话,必须遍历整个表,知道id等于10000的这一行被找到为止。但是有了索引之后(必须在id这一列
2017-09-07 11:57:39 6268
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人