文/徐永久

  我们知道 Zend 有免费的优化引擎针对 PHP 而作,但是 FreeLAMP 这次采用的是一个叫做 PHP Accelerator 的缓冲产品。

  我们在 “LAMP 加速” 这篇文章中阐述过加速的几种办法,其中提到了 PHP Accelerator,它的安装方法十分简单,但是需要去他的网站获取一个激活键。

  
  一、下载:

  www.php-accelerator.co.uk/download.php

  二、获取激活键并安装:

  www.php-accelerator.co.uk/activate.php

  注册自己的 SERVER_NAME 后,你会得到下面的提示:

  Your key for www.freelamp.com is 8edfd13946c96309244fcca309415902

  Now you must set the key for www.freelamp.com in your site configuration.

  For single domains not using virtual hosts

  The key can be set in the php.ini file as follows:

  # PHPA key for www.freelamp.com

  #

  phpa.registration_key = 8edfd13946c96309244fcca309415902

  For domains setup as a virtual host

  Add the key to the domain specific section for your web server.

  # www.freelamp.com VHost entry

  #

  < VirtualHost 10.20.30.40>

  ServerName www.freelamp.com

  # ... (other vhost specific config)

  # php settings

  php_value phpa.registration_key 8edfd13946c96309244fcca309415902

  # also enable phpa if set to off in the php.ini (the default is on)

  php_value phpa 1

  < /VirtualHost>

  具体的 phpa 值的设置,可以参考软件随带的 CONFIGURATION 文件的配置。

  由于大多数网站是虚拟主机配置,所以,建议采用 php_value phpa. 的方式设置。

  例如:

  php_value phpa.tweaks off

  php_value phpa.cache_dir /tmp

  php_value phpa.file_perms 400

  php_value phpa.ignore_files "/index.php, /a/test.php"

  # php_value phpa.ignore_dirs "/data/WWW/site1/,/cache/"

  php_value phpa.shm_size 8

  php_value phpa.shm_key 0xc0deb00

  php_value phpa.shm_perms 664

  三、设置 php.ini

  假设我们把下载后的文件解开到 /usr/local/php ,那么在 php.ini 中加入:

  zend_extension=/usr/local/php/php_accelerator_1.2p2.so

  并注释掉原来的 Zend 优化引擎:

  # zend_extension=/usr/local/Zend/lib/ZendOptimizer.so

  重新启动 Apache ,用浏览器浏览一个任意 PHP 页面可以看到 /tmp 下面生成了一些 phpa 开头的文件。另外一个检查缓冲是否起作用的办法是看 phpinfo() 的输出,原来的 Zend 优化引擎的说明部分,已经被显示成:

  This program makes use of the Zend Scripting Language Engine:

  Zend Engine v1.1.1, Copyright (c) 1998-2001 Zend Technologies

  with the PHP Accelerator v1.2p2, Copyright (c) 2001-2002, by Nick Lindridge

  需要说明的是,安装 INSTALL 安装说明上的办法,其中的 .so 文件和真实的 .so 文件有差异,所以,你在安装的时候需要注意到这个区别。

  四、调整缓冲大小

  PHP Accelerator 提供了缓冲管理命令:

  phpa_cache_admin -mv 观察内存的缓冲情况

  phpa_cache_admin -fv 观察文件的缓冲情况

  phpa_cache_admin -k 设置缓冲大小

  五、总结

  该软件提供的 INSTALL 文件阐述了关于性能上的一些说法,笔者不在这里赘述。

  需要说明的是,FreeLAMP.com 的文章目前不是 PHP 架构的,但是论坛系统是 PHP 架构的,所以性能上的提升只会是论坛系统的提升。(FreeLAMP:徐永久 提供本文)

网站加速 PHP 缓冲的免费实现方法的更多相关文章

  1. PHP个人网站架设连环讲(一)

    先下一个OmnihttpdProffesinalV2.06,装上就有PHP4beta3可以用了。PHP4给我们带来一个简单的方法,就是使用SESSION(会话)级变量。但是如果不是PHP4又该怎么办?我们可以假设某人在15分钟以内对你的网页的请求都不属于一个新的人次,这样你可以做个计数的过程存在INC里,在每一个页面引用,访客第一次进入时将访问时间送到cookie里。以后每个页面被访问时都检查cookie上次访问时间值。

  2. PHP实现文件安全下载

    例如你希望客户要填完一份表格,才可以下载某一文件,你第一个想法一定是用"Redirect"的方法,先检查表格是否已经填写完毕和完整,然后就将网址指到该文件,这样客户才能下载,但如果你想做一个关于"网上购物"的电子商务网站,考虑安全问题,你不想用户直接复制网址下载该文件,笔者建议你使用PHP直接读取该实际文件然后下载的方法去做。feof){echofread;}fclose;}这样就可以用PHP直接输出文件了。

  3. PHP默认安装产生系统漏洞

    当你下载PHP後,在它内含的安装文件中帮助了PHP在NTApacheWebServer的安装方式,其中的安装帮助会要你将底下这几行设置加到apache的httpd.conf设置文件中,而这个安装文件将导引你将你的系统门户大开。

  4. 实现“上一页”和“下一页按钮

    offset=$prevoffset\">上一页\n";}//计算页面数$pages=intval;//$pagesnowcontainsintofpagesneededunlessthereisaremainderfromdivisionif{//hasremaindersoaddonepage$pages;}for{//显示页数$newoffset=$limit*;print"

  5. 怎样在UNIX系统下安装php3

    #cd/usr/src#tarxvzfapache_1.3.6.tar.gz(产生apache_1.3.6目录)#tarxvzfphp-3.0.8.tar.gz(产生php-3.0.8目录)#cdapache_1.3.6#./configure--prefix=/usr/local/apache(把Apache的安装目录定为/usr/local/apache)#cdphp-3.0.8#./conf

  6. ftp类(example.php)

    flush();$ftp_ini_datei=$argv[1];require('./ftp_class.php');require($ftp_ini_datei);echo"\nCronjobstarted:";echodate("d.m.Y-H:i:s");echo"\n";$newftp=newmyftp;if(!$anonymous){$result=$newftp->connect($host,$user,$password);}else{$result=$newftp->connect($ho

  7. jQuery常用的一些技巧汇总

    本文给大家汇总了一些jQuery常用的方法,都是我们日常项目中经常会用到的,附上示例,有需要的小伙伴可以参考下。

  8. PHP分页显示制作详细讲解

    搞定了最重要的如何获取数据的问题以后,剩下的就仅仅是传递参数,构造合适的sql语句然后使用php从数据库内获取数据并显示了。

  9. Java中String类常用方法使用详解

    String类是一个很常用的类,它位于java.lang包下,是Java语言的核心类,用来保存代码中的字符串常量的,并且封装了很多操作字符串的方法。本文就来聊聊String类常用方法使用,感兴趣的可以了解一下

  10. PHP中GET变量的使用

    自PHP4.1.0以后将HTTP_GET_VARS使用GET变量来保存,GET的变量主要来自以下的方法对服务器以获取资料信息为请求方法的例如,URL,使用FORM的METHOD为GET方式。这样所有的请求变量将通过URL传递给服务器,服务器根据配置调用相关的解释器来处理这些GET出来的变量。arg_separator.input=";,"————二、自己编写解释语法list=$_GET;//将GET变量分解出来$tmp=explode;//将数据分出这个用法的优点在于,别人无法知道您传递的值是被谁使用,您

随机推荐

  1. PHP个人网站架设连环讲(一)

    先下一个OmnihttpdProffesinalV2.06,装上就有PHP4beta3可以用了。PHP4给我们带来一个简单的方法,就是使用SESSION(会话)级变量。但是如果不是PHP4又该怎么办?我们可以假设某人在15分钟以内对你的网页的请求都不属于一个新的人次,这样你可以做个计数的过程存在INC里,在每一个页面引用,访客第一次进入时将访问时间送到cookie里。以后每个页面被访问时都检查cookie上次访问时间值。

  2. PHP函数学习之PHP函数点评

    PHP函数使用说明,应用举例,精简点评,希望对您学习php有所帮助

  3. ecshop2.7.3 在php5.4下的各种错误问题处理

    将方法内的函数,分拆为2个部分。这个和gd库没有一点关系,是ecshop程序的问题。会出现这种问题,不外乎就是当前会员的session或者程序对cookie的处理存在漏洞。进过本地测试,includes\modules\integrates\ecshop.php这个整合自身会员的类中没有重写integrate.php中的check_cookie()方法导致,验证cookie时返回的username为空,丢失了登录状态,在ecshop.php中重写了此方法就可以了。把他加到ecshop.php的最后面去就可

  4. NT IIS下用ODBC连接数据库

    $connection=intodbc_connect建立数据库连接,$query_string="查询记录的条件"如:$query_string="select*fromtable"用$cur=intodbc_exec检索数据库,将记录集放入$cur变量中。再用while{$var1=odbc_result;$var2=odbc_result;...}读取odbc_exec()返回的数据集$cur。最后是odbc_close关闭数据库的连接。odbc_result()函数是取当前记录的指定字段值。

  5. PHP使用JpGraph绘制折线图操作示例【附源码下载】

    这篇文章主要介绍了PHP使用JpGraph绘制折线图操作,结合实例形式分析了php使用JpGraph的相关操作技巧与注意事项,并附带源码供读者下载参考,需要的朋友可以参考下

  6. zen_cart实现支付前生成订单的方法

    这篇文章主要介绍了zen_cart实现支付前生成订单的方法,结合实例形式详细分析了zen_cart支付前生成订单的具体步骤与相关实现技巧,需要的朋友可以参考下

  7. Thinkphp5框架实现获取数据库数据到视图的方法

    这篇文章主要介绍了Thinkphp5框架实现获取数据库数据到视图的方法,涉及thinkPHP5数据库配置、读取、模型操作及视图调用相关操作技巧,需要的朋友可以参考下

  8. PHP+jquery+CSS制作头像登录窗(仿QQ登陆)

    本篇文章介绍了PHP结合jQ和CSS制作头像登录窗(仿QQ登陆),实现了类似QQ的登陆界面,很有参考价值,有需要的朋友可以了解一下。

  9. 基于win2003虚拟机中apache服务器的访问

    下面小编就为大家带来一篇基于win2003虚拟机中apache服务器的访问。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  10. Yii2中组件的注册与创建方法

    这篇文章主要介绍了Yii2之组件的注册与创建的实现方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下

返回
顶部