- 博客(10)
- 问答 (7)
- 收藏
- 关注
原创 PHP处理密码的几种方式
在 PHP中,经常会对用户身份进行认证。本文意在讨论对密码的处理,也就是对密码的加密处理。MD5相信很多PHP开发者在最先接触PHP的时候,处理密码的首选加密函数可能就是MD5了,我当时就是这样的:$password = md5($_POST["password"]);上面这段代码是不是很熟悉?然而MD5的加密方式目前已经不太安全了,因为它的加密算法实在是显得有点简单了,而且很多破解密码的站点都存放
2016-10-29 13:43:10 1522
原创 深入理解PHP中的SESSION技术
深入理解PHP中的SESSION机制一、默认的文件存储机制PHP默认使用磁盘文件来保存 SESSION数据。 php.ini中关于 SESSION的基本配置:1、session.save_handler = files //SESSION的存储方式2、session.save_path = 'xxx' //存放文件的路径 2、session.name = 'PHPSESSID'
2016-10-29 00:44:04 499
原创 初探五种服务器网络编程模型
五种服务器网络编程模型1.同步阻塞迭代模型(同步阻塞)首先介绍同步阻塞迭代模型,它的核心代码如下:bind(srvfd, ...); listen(srvfd, ...); for(;;){ clifd = accept(srvfd, ...); //开始接受客户端来的连接 read(clifd,buf, ...); //从客户端读取...
2016-10-28 21:33:15 804
原创 Apache的三种工作模式及相关配置
Apache的三种工作模式作为老牌服务器,Apache仍在不断地发展,就目前来说,它一共有三种稳定的MPM(Multi-Processing Module,多进程处理模块)。它们分别是 prefork、worker 和 event 。1、Prefork MPM关键字:多进程prefork模式可以算是很古老但是非常稳定的模式。Apache在启动之初,就预先 fork一些子进程,然后等待请求进来。之所以
2016-10-28 10:53:07 12290
原创 让C/S进行全双工通信的WebSocket协议
超文本传输协议(HTTP)作为一种简单的协议,在面对功能日益丰富的 Web应用时,遇到了如下瓶颈:1、在客户端请求时,会建立一个TCP连接,然后发送请求,服务端给出响应,然后连接就关闭了。(现在的HTTP1.1支持消除了这个瓶颈)2、客户端和服务器之间的交互是采用请求/响应模式,缺乏服务器通知客户端的机制,在需要通知的场景,如聊天室,游戏,客户端应用需要不断地轮询服务器。3、请求/响应首部不经过
2016-10-28 01:52:03 3785 1
原创 Nginx 与 PHP-FPM 的协作机制
作为现在被很多大公司采用的Nginx + PHP-FPM,它们是怎么样做到协同合作呢?FastCGI 协议要搞明白这个问题,首先得说 CGI (Common Gateway Interface) 和 FastCGI 这两个协议。CGI 是 Web Server 与后台语言交互的协议,有了这个协议,开发者可以使用任何语言处理 Web Server 发来的请求,动态的生成内容。但 CGI 有一个致命的缺
2016-10-26 23:46:18 921
原创 初步探索Nginx高并发原理
Nginx首先要明白,Nginx 采用的是多进程(单线程) & 多路IO复用模型。使用了 I/O 多路复用技术的 Nginx,就成了”并发事件驱动“的服务器。多进程的工作模式1、Nginx 在启动后,会有一个 master 进程和多个相互独立的 worker 进程。2、接收来自外界的信号,向各worker进程发送信号,每个进程都有可能来处理这个连接。3、 master 进程能监控 worker
2016-10-26 17:30:51 13823 11
原创 CGI、FastCGI、PHP-FPM与Module模式
CGI最早的Web服务器简单地响应浏览器发来的HTTP请求,并将存储在服务器上的HTML文件返回给浏览器,也就是静态html。事物总是不断发展,网站也越来越复杂,所以出现动态技术。但是服务器并不能直接运行 php文件,服务器自己不能做,外包给别人吧,但是要与第三方做个约定,我给你什么,然后你给我什么,就是我把请求参数发送给你,然后我接收你的处理结果给客户端。那这个约定就是 Common Gatewa
2016-10-25 14:56:32 1499
原创 如何高效地利用MySQL索引
为实现MySQL的高性能,我们需要在优化索引、优化查询、优化表结构三个方面努力,这三个方面每个都至关重要。 本文主要讨论索引相关。1.要想合理利用索引,我们要考虑如何正确建立索引呢。 (1)在经常做搜索的列上,也就是WHERE子句里经常出现的列,考虑加上索引,加快搜索速度。 (2)唯一标识记录的列,应该加上主键索引,强制该列的唯一性并且加快按主键查找记录的速度。 (3)在作为关联查询的连接列
2016-10-19 12:40:38 847
原创 MySQL中MyISAM和InnoDB对B-Tree索引不同的实现方式
索引是 MySQL数据库很重要的一部分,它对数据表查询性能的好坏起着决定性的作用,对大表尤甚。 作为索引中最为常见的一种类型,B-Tree索引大都采用的是 B+Tree数据结构来存储数据(NDB集群存储引擎内部实际上采用 T-Tree结构存储这种索引)。B-Tree通常也意味着所有的值都是按顺序存储的。 大多数的 MySQL引擎都支持这种索引,而不同的存储引擎以不同的方式来实现 B-Tree索引。
2016-10-16 01:17:52 6635 2
空空如也
已经下载了Ubuntu.iso,请问怎么安装?
2016-11-29
php单例模式中 new self 和 new 本类名 有什么区别啊
2016-08-27
请问php写的cms网站中如何防止同一ip用户的重复操作???
2016-08-19
在php项目中通常使用 pdo 还是 mysqli 连接mysql?
2016-08-14
html中script中引入php的问题
2016-08-13
关于如何防止sql特殊字符的问题。
2016-08-05
js中的ajax不能正常接收xml的问题
2016-07-26
TA创建的收藏夹 TA关注的收藏夹
TA关注的人