IIS7,IIS7.5 升級PHP5.3后站點變慢的解決方法
大多數(shù)PHP頁面實際上都是數(shù)據(jù)庫驅動的,要連接數(shù)據(jù)庫才能顯示出來,而響應時間過長的原因便在于PHP 5.3連接數(shù)據(jù)庫的方式有所改變。目前我們配置數(shù)據(jù)庫信息時都類似這樣的“$dbhost=‘localhost' ”;這本身是沒有問題的,只是PHP 5.3會考慮是IPv4還是IPv6,面對localhost會猶豫,因此出現(xiàn)響應時間過長的情況。如果你查看過服務器處理PHP的時間,你會發(fā)現(xiàn)處理PHP的時間很短,等待處理前的時間很長。
也就是連接數(shù)據(jù)庫時本地解析 localhost 為 127.0.0.1 的時間太長
目前這種響應時間過長的情況只出現(xiàn)在IIS 7及IIS 7.5升級PHP 5.3系列版本后,至于數(shù)據(jù)庫版本是多少沒多大影響。簡單普及一下知識,windows 2008分為32位和64位,自帶IIS 7,windows 2008 R2自帶IIS 7.5,R2版本的系統(tǒng)只有64位。如果你用的IIS 6或者Linux系統(tǒng)什么的,目前還沒存在這樣的問題,主要是windows 2008系統(tǒng)。
解決辦法:
方法一:上面已經(jīng)說到,這是因為PHP 5.3在面對數(shù)據(jù)庫配置信息中的“l(fā)ocalhost”會猶豫,因此直接把這個地址改名為“127.0.0.1”就可以,例:
<?php
//數(shù)據(jù)庫連接信息
$cfg_dbhost = 'localhost'; //改此處的localhost為:127.0.0.1
?>
方法二:IIS 7及IIS7.5是默認開啟IPv6組件的,現(xiàn)在不少國內大廠商同樣在部署IPv6;如果你的服務器用不上IPv6網(wǎng)絡,那么直接把IPv6禁用即可,
打開“%systemroot%\System32\drivers\etc\hosts”這個文件,注釋掉“::1 localhost”即可。
方法三:直接把PHP版本降級即可,保持在PHP 5.2.17版本,這是目前用得最多的版本,幾乎所有的PHP網(wǎng)站程序都可以運行在這個版本上。經(jīng)測試,在PHP 5.2系列版本,IIS 7和IIS 7.5均能保證高效運行PHP網(wǎng)站程序。
相關文章
iis6網(wǎng)站屬性沒有asp.net選項卡的解決辦法
這篇文章主要介紹了iis6網(wǎng)站屬性沒有asp.net選項卡的解決辦法,一般是沒有安裝.NET Framework 2.0的原因造成的,本文同時給出另外幾種可能情況,需要的朋友可以參考下2014-08-08
Apache 文件根目錄設置修改方法 (Document Root)
最近在學習WordPress,使用appServ 在windows上搭建Php開發(fā)環(huán)境2012-01-01

