本文简单说下PHP从5.2升级到5.3或5.4后本地访问变慢的原因及解决方案。
以前一直用的是PHP-5.2.17,也就是5.2的最后一个版本,估计目前用的最多的也是这个。今天升级到了PHP-5.4.12,MySQL配置等没变,发现本地服务器访问起来非常慢,访问一个页面需要1s多。但是访问静态页面,也就是不需要数据库连接的页面却很快,因此基本可以断定问题在MySQL。
简单搜索了下,其实网上关于这个问题的反馈还挺多。那么我这里把参考来的答案也简单说下。
响应时间过长的原因便在于PHP从5.3版本起连接数据库的方式有所改变。目前我们配置数据库信息时都类似这样:
$host ='localhost';
$dbname ='test';
$username ='root';
$password ='root';
?>
这本身是没有问题的,只是PHP-5.3及以后版本会考虑是IPv4还是IPv6,面对localhost会犹豫,因此出现响应时间过长的情况。
至于解决方法,简单的来说修改下主机地址即可:
$host ='127.0.0.1';
$dbname ='test';
$username ='root';
$password ='root';
?>
这样本地访问速度基本与PHP-5.2.x版本的一样。