![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PHP
cuijinquan
这个作者很懒,什么都没留下…
展开
-
记住登录状态的安全做法
永久登录指的是在浏览器会话间进行持续验证的机制。换句话说,今天已登录的用户明天依然是处于登录状态,即使在多次访问之间的用户会话过期的情况下也是这样。永久登录的存在降低了你的验证机制的安全性,但它增加了可用性。不是在用户每次访问时麻烦用户进行身份验证,而是提供了记住登录的选择。据我观察,最常见的有缺陷的永久登录方案是将用户名和密码保存在一个cookie中。这样做的诱惑是可以理解的——不需要提转载 2014-01-16 10:09:58 · 4562 阅读 · 2 评论 -
centos上安装php运行环境(手记)
-, 配置apache1.关闭防火墙service iptables stopchkconfig iptables off2.开启apacheservice httpd statusservice httpd start3.更改http.conf配置ServerTokens OS –> ServerTokens ProdServerSignatur转载 2013-12-12 14:44:19 · 512 阅读 · 0 评论 -
PHP数字数组倒排序
rsort($d,SORT_NUMERIC);排序后:$d[0]值是最大的原创 2013-12-12 12:18:11 · 857 阅读 · 0 评论 -
百万级PHP网站Poppen.de的架构分享
在了解过世界最大的PHP站点,Facebook的后台技术后,今天我们来了解一个百万级PHP站点的网站架构:Poppen.de。Poppen.de是德国的一个社交网站,相对Facebook、Flickr来说是一个很小的网站,但它有一个很好的架构,融合了很多技术,如Nigix、MySQL、CouchDB、Erlang、Memcached、RabbitMQ、PHP、Graphite、Red5以及Tsun转载 2013-12-12 14:54:10 · 432 阅读 · 0 评论 -
跨域写cookie
实际工作中,类似这样的要求很多,比如说,我们有两个域名,我们想实现在一个域名登录后,能自动完成另一个域名的登录,也就是PASSPORT的功能。我只写一个大概,为了测试的方便,先编辑hosts文件,加入测试域名(C:\WINDOWS\system32\drivers\etc\hosts)127.0.0.1 www.a.com127.0.0.1 www.转载 2013-12-12 00:34:21 · 490 阅读 · 0 评论 -
stream_set_blocking让程序无阻塞
stream_set_blocking让程序无阻塞stream_set_blocking ($resource, $flag); $flag 取值为0或10是非阻塞,1是阻塞阻塞的意义是什么呢?某个函数读取一个网络流,当没有未读取字节的时候,程序该怎么办?是一直等待,直到下一个未读取的字节的出现,还是立即告诉调用者当前没有新内容?前者是阻塞的转载 2013-12-12 00:27:42 · 465 阅读 · 0 评论 -
PHP 将字符串按指定长度插入分隔字符
如:把数字时间格式化成普通时间.$a=152500;$a= substr(chunk_split($a, 2, ':'), 0, -1);echo $a;原创 2013-12-11 22:56:39 · 1676 阅读 · 1 评论 -
xhprof使用笔记
【作用】xhprof是facebook开源的一个php性能分析工具。【安装】xhprof扩展的安装:wget http://pecl.php.net/get/xhprof-0.9.2.tgztar zxf xhprof-0.9.2.tgzcd xhprof-0.9.2/extension/phpize./configu转载 2013-12-12 15:01:46 · 419 阅读 · 0 评论 -
使用XHProf优化PHP程序
XHProf 是 FaceBook 开发的一个函数级别的 PHP 分层分析器。数据收集部分是一个基于 C 的 PHP 扩展,分析报告是一系列基于 PHP 的 HTML 导航页面。XHProf 能统计每个函数的调用次数、内存使用、CPU占用等多项重要的数据。并且 XHProf 还能比较两个统计样本,或从多个数据样本中汇总结果。XHProf 是分析 PHP 程序执行效率转载 2013-12-12 15:04:15 · 465 阅读 · 0 评论 -
揭秘Facebook背后的那些软件
揭秘Facebook背后的那些软件来源: 博客园 发布时间: 2010-07-16 16:43 阅读: 1732 次 推荐: 0 原文链接 [收藏] 对于Facebook这样超大规模的网站,很多传统的解决方案根本不适用。Facebook工程师们面临的巨大挑战是保证一个近5亿活跃用户的网站一直稳定可靠地运行。他们是如何做到的呢,这篇文章将介绍一下他们所转载 2013-12-13 01:01:27 · 536 阅读 · 0 评论 -
如何处理JSON中的特殊字符
JSON 是适用于 Ajax 应用程序的一种有效格式,原因是它使 JavaScript 对象和字符串值之间得以快速转换。由于 Ajax 应用程序非常适合将纯文本发送给服务器端程序并对应地接收纯文本,相比不能生成文本的 API,能生成文本的 API 自然更可取;而且,JSON 让您能够处理本地 JavaScript 对象,而无需为如何表示这些对象多费心思。XML 也可以提供文本方面的类似益处转载 2014-01-15 21:36:48 · 2292 阅读 · 0 评论 -
收集的二十一个实用便利的PHP函数代码
收集的二十一个实用便利的PHP函数代码这里整理的二十一个实用便利的PHP函数代码比较适合php开发过程中的直接使用与学习参考,对每种类型的 PHP 开发者都会有所帮助。PHP 是目前使用最广泛的基于 Web 的编程语言,驱动着数以百万计的网站,其中也包括如 Facebook 等一些大型站点。这里收集了 21 段实用便捷的 PHP 代码摘录,对转载 2014-01-08 20:27:08 · 610 阅读 · 0 评论 -
PHP调用MYSQL存储过程方法
范例: function Query($sql) { define('CLIENT_MULTI_RESULTS', 131072);$link = mysql_connect('localhost', 'root', '**************',1,CLIENT_MULTI_RESULTS);$result=array();if (!$link)原创 2013-12-15 20:28:43 · 452 阅读 · 0 评论 -
php面试题
1.setcookie('a','value');print $_COOKIE['a'];输出结果是啥?答:value 第一次访问为空!第二次访问$_COOKIE['a']已经被赋值完成!2.try { require_once "aaa"; print "aaa";} catch (Exception $e) { echo 'dddd';}转载 2013-12-13 01:26:09 · 451 阅读 · 0 评论 -
php缓存由php生成的html组件的功能实现
tml组件一般包括js,css,图片,某些特定情况下,不是直接访问,而是通过php访问,这里描述如何缓存,并以图片举例。缓存能稍许加快速度。要注意:无论如何,这样操作一定比服务器直接返回图片慢不少,只适用于特定场合。环境:linux apache2, php5.2.6,php.ini时区设好PRC 假定/www/images/demo.jpg存在。实现:以下是1转载 2013-12-13 01:17:16 · 514 阅读 · 0 评论 -
php中的时间管理
日期和时间1.介绍unix时间戳以32位整数表示格林威治标准时间 1970-20302.在php中获取日期和时间echo time();var_dump(getdate());3.日期和时间的格式化输出date();gmdate4.将日期和时间转变成unix时间戳strtotime();mktime();5.修改php的默认时区以前原创 2013-12-13 01:04:04 · 404 阅读 · 0 评论 -
验证码类的设计
//验证码类设计class VaildationCode{ private $width; private $height; private $codeNum; private $image;//图像资源 function __construct($width=40,$height=20,$codeNum=4){ $this->w转载 2013-12-13 01:03:30 · 367 阅读 · 0 评论 -
使用PHP下载文件
使用PHP下载文件方法很多,比较常用的就是使用函数:readfile。演示代码如下:代码一:header(‘Content-Description: File Transfer’);header(‘Content-Type: application/octet-stream’);header(‘Content-Disposition: attachment; filename=’.转载 2013-12-12 02:25:07 · 392 阅读 · 0 评论 -
远程调用SHELL函数
function remoteRunShell($ip, $shell, $sysuser, $syspass) {$connection = ssh2_connect($ip, 22);if(!ssh2_auth_password($connection, $sysuser, $syspass)) {return false;}$stream = ssh2_exec($con原创 2013-12-12 02:08:09 · 1089 阅读 · 0 评论 -
关于php中header()、setcookie()、session_start()函数错误的解决方法和解释
有很多人在使用header()、setcookie()、session_start()这三个函数时,会出现类似下面的错误:Warning: Cannot modify header information - headers already sent by (output started at C:\web\Apache2\htdocs\savedata.php:1) in C:\web\转载 2013-12-12 01:04:14 · 642 阅读 · 0 评论 -
Apache 安全设置
HTTP拒绝服务攻击 攻击者通过某些手段使服务器拒绝对http应答,这使Apache对系统资源(cup时间与内存)需求巨增,最终造成系统变慢甚至完全瘫痪,Apache服务器最大的缺点是,它的普遍性使它成为众矢之的,Apache服务器无时无刻不受到DoS攻击威胁,主要有下边几种 1.数据包洪水攻击 一种中断服务器或本地网络的方法是数据包洪水攻击,它通常使用internet控转载 2013-12-10 13:31:05 · 392 阅读 · 0 评论 -
LNMP(linux+nginx+mysql+php)服务器环境配置
LNMP(linux+nginx+mysql+php)服务器环境配置一、简介 Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为 “engine X”, 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.Nginx是由俄罗斯人 Igor Sysoev为俄罗斯访问量第二的 Rambler.ru站点开发的,转载 2013-12-08 18:26:41 · 712 阅读 · 5 评论 -
编译PHP5.6.5后,查看默认支持的函数
这里显示系统所支持的所有函数,和自定义函数Array( [internal] => Array ( [0] => zend_version [1] => func_num_args [2] => func_get_arg [3] => func_get_args原创 2013-12-09 13:19:11 · 739 阅读 · 5 评论 -
PHP中常用的数组函数
PHP中常用的数组函数 数组运用的熟练有时候能解决很多问题。熟悉相关函数就能事半功倍。看看下面有关数组的函数你是否都熟悉呢?一、数组操作的基本函数数组的键名和值array_values($arr);获得数组的值array_keys($arr);获得数组的键名array_flip($arr);数组中的值与键名互换(如果有重复前面的会被后面的覆盖)in_ar原创 2013-12-02 16:22:37 · 454 阅读 · 0 评论 -
PHP 5.5.6编译
1../configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/lib --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-iconv-dir=/usr/local --with-fr原创 2013-12-07 22:39:52 · 1366 阅读 · 2 评论 -
编译php时的一些典型错误及解决办法.
configure: error: xml2-config not found. Please check your libxml2 installation.yum install libxml2-develconfigure: error: Cannot find OpenSSL’syum install openssl-develconfigure: error: Pleas转载 2013-12-09 12:43:29 · 532 阅读 · 0 评论 -
CentOS 6.3下源码安装LAMP(Linux+Apache+Mysql+Php)环境
CentOS 6.3下源码安装LAMP(Linux+Apache+Mysql+Php)环境一、简介什么是LAMP LAMP是一种Web网络应用和开发环境,是Linux, Apache, MySQL, Php/Perl的缩写,每一个字母代表了一个组件,每个组件就其本身而言都是在它所代表的方面功能非常强大的组件。 LAMP这个词的由来最早始于德国杂志“c't转载 2013-12-08 18:05:56 · 483 阅读 · 1 评论 -
Install Apache 2.2.15, MySQL 5.5.34 & PHP 5.5.4 on RHEL/CentOS 6.4/5.9 & Fedora 19-12
This howto guide explains you’ll how to install Apache Server with latestMySQL 5.5.32 and PHP 5.5.0 versions with php required following modules onRHEL 6.4/6.3/6.2/6.1/6.0/5.9/5.8/5.6, CentOS 6.转载 2013-12-08 01:38:06 · 619 阅读 · 0 评论 -
修改Apache配置文件开启gzip压缩传输
在apache2.0以上(包括apache2.0)的版中gzip压缩使用的是mod_deflate模块,下面是具体配置步骤第1步LoadModule deflate_module modules/mod_deflate.soLoadModule headers_module modules/mod_headers.so 打开httpd.conf后,先将上面两行配置前面的#号原创 2013-12-10 12:50:52 · 428 阅读 · 0 评论 -
服务器防范
http://www.securityfocus.com/tools/原创 2013-12-10 13:33:43 · 389 阅读 · 0 评论 -
如何在PHP开启gzip页面压缩实例
示例一(用php的内置压缩函数):if(Extension_Loaded('zlib')) Ob_Start('ob_gzhandler'); Header("Content-type: text/html"); ?> 无标题文档 for($i=0;$iecho 'Hello World!'; }转载 2013-12-10 11:11:19 · 544 阅读 · 0 评论 -
五种常见的php设计模式
http://www.ibm.com/developerworks/cn/opensource/os-php-designptrns/设计模式 一书将设计模式引入软件社区,该书的作者是 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides Design(俗称 “四人帮”)。所介绍的设计模式背后的核心概念非常简单。经过多年的软件开发实践,转载 2013-12-12 01:03:29 · 508 阅读 · 0 评论 -
php session学习笔记
http 无状态协议一个服务器向客户端发送消息的时候有三条信息一是状态二是头信息三是内容会话控制让一个用户访问每个页面,服务器都知道是哪个用户访问cookiecookie是通过头信息发送的setcookie函数之前不能有任何输出C:\Documents and Settings\Administrator\Cookiessetcookie("nam转载 2013-12-12 00:39:46 · 488 阅读 · 0 评论 -
http和socket
相信不少初学手机联网开发的朋友都想知道Http与Socket连接究竟有什么区别,希望通过自己的浅显理解能对初学者有所帮助。 1、TCP连接 要想明白Socket连接,先要明白TCP连接。手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接。TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。 建立起转载 2013-12-12 00:32:03 · 480 阅读 · 0 评论 -
fsockopen打开网络的 Socket 链接
语法:int fsockopen(string hostname, int port, int [errno], string [errstr], int [timeout]);内容说明目前这个函数提供二个 Socket 资料流界面,分别为 Internet 用的 AF_INET 及 Unix 用的 AF_UNIX。当在 Internet 情形下使用时,参数 hostname 及 po转载 2013-12-12 00:31:32 · 746 阅读 · 0 评论 -
php中 curl, fsockopen ,file_get_contents 三个函数
赵永斌:有些时候用file_get_contents()调用外部文件,容易超时报错。换成curl后就可以.具体原因不清楚curl 效率比file_get_contents()和fsockopen()高一些,原因是CURL会自动对DNS信息进行缓存(亮点啊 有我待亲测)范佳鹏:file_get_contents curl fsockopen在当前所请求环境下选择性操作,没有一转载 2013-12-12 00:31:00 · 481 阅读 · 0 评论 -
stream_set_timeout的使用方法
PHP函数stream_set_timeout(Stream Functions)作用于读取流时的时间控制。fsockopen函数的timeout只管创建连接时的超时,对于连接后读取流时的超时,则需要用到 stream_set_timeout函数。由于国内的网络环境不是很稳定,尤其是连接国外的时候,不想程序出现Fatal error: Maximum execution time of 30转载 2013-12-12 00:29:45 · 1039 阅读 · 0 评论 -
隐藏 PHP
一般而言,通过隐藏的手段提高安全性被认为是作用不大的做法。但某些情况下,尽可能的多增加一份安全性都是值得的。一些简单的方法可以帮助隐藏 PHP,这样做可以提高攻击者发现系统弱点的难度。在 php.ini 文件里设置 expose_php = off ,可以减少他们能获得的有用信息。另一个策略就是让 web 服务器用 PHP 解析不同扩展名。无论是通过 .htaccess 文件还是转载 2013-12-11 23:57:43 · 417 阅读 · 0 评论 -
PHP 删除数组指定位置的值
array_splice($array,开始位置,需要删除的单元个数,替代的删除位置中的值);如删除数组$array=array(0,3,3d,dfasf,c,33,fd,del,ol);中第七个位置的del值array_splice($array,7,1);原创 2013-12-11 23:14:33 · 726 阅读 · 0 评论 -
LNMP、LAMP、LANMP一键安装脚本
这个脚本是使用shell编写,为了快速在生产环境上部署LNMP/LAMP/LANMP(Linux、Nginx/Tengine、MySQL/MariaDB/Percona、PHP),适用于CentOS/Redhat 5+、Debain 6+和Ubuntu 12+脚本特性: 持续不断更新源码编译安装,大多数源码是最新stable版,并从官方网址下载一些安全优化提供多个数据库版本(MyS转载 2013-12-08 01:54:41 · 879 阅读 · 0 评论