当你遇到这个问题,可能不是apache、iss配置上出了问题,原因很可能是因为PHP版本的问题。
php5.3后变慢原因
很多PHP页面实际上都是数据库驱动的,要连接数据库才能显示出来,而响应时间过长的原因便在于 PHP 5.3连接数据库的方式有所改变。目前我们配置数据库信息时都类似这样的“$dbhost=‘localhost’ ”;这本身是没有问题的,只是PHP 5.3会考虑是IPv4还是IPv6,面对localhost会犹豫,因此出现响应时间过长的情况。如果你查看过服务器处理PHP的时间,你会发现处理 PHP的时间很短,等待处理前的时间很长。
目前这种响应时间过长的情况只出现在IIS 7及IIS 7.5升级PHP 5.3系列版本后,至于数据库版本是多少没多大影响。简单普及一下知识,windows 2008分为32位和64位,自带IIS 7,windows 2008 R2自带IIS 7.5,R2版本的系统只有64位。如果你用的IIS 6或者Linux系统什么的,目前还没存在这样的问题,主要是windows 2008系统。
修改方法
上面已经说到,这是因为PHP 5.3在面对数据库配置信息中的“localhost”会犹豫,因此直接把这个地址改名为“127.0.0.1”,这个IP是IPv4下面的本地网络地 址,实际作用和“localhost”一样,不过能明确告诉PHP这是IPv4网络。
至于别的程序,同样修改数据库配置文件即可,下面是一般的数据库配置文件信息。
< ?php
//数据库连接信息
$cfg_dbhost = 'localhost';修改此处的localhost为127.0.0.1
$cfg_dbname = 'blog';
$cfg_dbuser = 'root';
$cfg_dbpwd = '123456';
$cfg_db_language = 'UTF-8'
? >