Win2003 R2 SP2 64位服務器系統 配置PHP+IIS6
2024-08-29 03:15:01
供稿:網友
有人會問,我為什么不用Apache來配置,因為我的服務器還要運行一個.NET的網站,而且網站和論壇之間實現了同步注冊和登陸。
FastCGI是IIS下配置PHP的一個新東西,配置方便,不受PHP的32或64位影響。但是問題也存在,最近論壇總是時快時慢,慢的時候響應超過20秒,最近幾天還出現php-cgi.exe進程爆增的情況,一次出來超過30個進程,導致服務器卡死,只有重新回收程序池才能處理掉,這樣就非常差勁。
因為這樣的情況我又想用會原來的ISAPI方式來運行PHP了, 也就是剛剛我才把ISAPI的運行環境完全搞定,為什么了?
1,ISAPI方式不支持64位系統,在IIS6下會提示不是32位程序,IIS7下提示腳本映射不對。
2,ISAPI是單進程,不會出現進程爆增的情況,先保證穩定再說。
現在說說我的配置經歷:
在網上找了3個版本的PHP 64位程序,分別是5.2.5,5.3.6,5.3.8,可以說3個版本我是來回測試。
下面是我的第一步安裝方式:
1,加壓PHP包到PHP文件夾下,配置PHP.INI文件,這個步驟我就不多說了。
2,在win2003的iis 6里面建立好一個PHP的網站,在建好的網站上點鼠標右鍵,屬性-主目錄-配置,在“映射”中添加,“可執行文件”為PHP文件夾下的php5isapi.dll,擴展名為php,確定。
3,然后在"Web服務擴展"中“添加一個新的Web服務擴展”,“擴展名”為PHP,“要求的文件”選擇PHP文件夾下的php5isapi.dll,確定,重新啟動IIS。
一切正常的情況下(我在這里沒出問題),phpinfo()是可以運行,也能看到運行數據的。但是我們仔細看運行數據,問題來了。
1,安裝discuz論壇,GD庫檢測顯示noext,mysql_conntect()顯示不支持mysql,也是就是說論壇不能正常安裝。
百度一個,找到很多轉載的解決方案,基本無用,而且都是試探性的說話,沒有根據,但是有資料總比沒有好,我再次仔細的看了一下phpinfo()給我的數據。進行了如下配置。
1,將配置好的php.ini文件拷貝到c:/windows中,這個時候phpinfo()顯示已經讀取到了配置文件。
2,拷貝php5ts.dll,libmysql.dll到系統C:/Windows/SysWOW64中,因為我是64位系統。有的朋友反映沒有libmysql.dll文件,這個是mysql的庫文件,去安裝mysql的文件夾下有個lib文件夾,拷貝一個libmysql.dll出來就是。當然我的mysql也是64位的。
3,配置php的目錄到系統環境變量,我配置了2個,因為我的php在D盤,所以配置為:d:/php;d:/php/ext;
4,重啟系統最好。做了以上工作,我的phpinfo()中顯示了mysql已經配置成功。
然后安裝論壇,一切OK。
不過終極的解決方案還是不要在windows下運行PHP,還是有些坑爹的,現在我連網站都要換成PHP來開發了,保持全站代碼統一。
以上配置,要是有朋友不明白,可以留言給我,一起學習。