雖然 LAMP 組合很不錯(cuò),但是如果想要架設(shè)一臺(tái)同時(shí)支持 PHP、ASP、ASP.NET、JSP、Perl 的 Web 虛擬主機(jī)服務(wù)器,還是用 Windows 2003 的 IIS 6 最好。網(wǎng)上有很多介紹在 IIS 6 上配置 PHP 的文章,但是那些方法不是性能不好,就是升級(jí)麻煩。下面的方法可以讓你在第一次配置好后,能夠非常方便的進(jìn)行升級(jí)。
這里所說的升級(jí),是指從某個(gè) php4 版本升級(jí)到另一個(gè) php4 版本,或者從某個(gè) php5 版本升級(jí)到另一個(gè) php5 版本,而不是指從 php4 升級(jí)到 php5。
準(zhǔn)備:
1、一臺(tái)安裝好的 Windows 2003 服務(wù)器,并且已經(jīng)安裝了 IIS 6。
2、下載 windows 版的 PHP 二進(jìn)制壓縮包
安裝:
解壓縮 PHP 二進(jìn)制壓縮包到 C:\php 目錄下(這里假設(shè) C: 盤是系統(tǒng)盤,即安裝了Windows 系統(tǒng)的盤,如果系統(tǒng)盤是 D: 盤,則解壓縮到 D:\php 目錄下,以此類推,下同)。
然后打開“我的電腦”->“屬性”->“高級(jí)”->“環(huán)境變量”->“系統(tǒng)變量”->“path”,編輯其值,在前面增加下面的路徑地址:
C:\php;C:\php\dlls;C:\php\extensions;C:\php\sapi;
將 php.ini-dist 或 php.ini-recommended 復(fù)制到 C:\Windows 目錄下,并改名為 php.ini,一般正式發(fā)布網(wǎng)站的服務(wù)器用 php.ini-dist,而作為調(diào)試用的服務(wù)器用 php.ini-recommended 更好。當(dāng)然一般情況下,這個(gè) php.ini 還是需要根據(jù)實(shí)際情況來修改的。
下面來介紹一下幾個(gè)必要的修改選項(xiàng):
extension_dir = "C:\php\extensions"
這個(gè)是 PHP 擴(kuò)展所放置的目錄,請(qǐng)確保跟你實(shí)際安裝的目錄相同。
extension=php_mbstring.dll
;extension=php_big_int.dll
extension=php_bz2.dll
extension=php_cpdf.dll
extension=php_crack.dll
extension=php_curl.dll
extension=php_db.dll
extension=php_dba.dll
extension=php_dbase.dll
extension=php_dbx.dll
extension=php_domxml.dll
;extension=php_exif.dll
;extension=php_fdf.dll
;extension=php_filepro.dll
extension=php_gd2.dll
extension=php_gettext.dll
extension=php_hyperwave.dll
extension=php_iconv.dll
;extension=php_ifx.dll
;extension=php_iisfunc.dll
extension=php_imap.dll
;extension=php_interbase.dll
extension=php_java.dll
extension=php_ldap.dll
;extension=php_mcrypt.dll
extension=php_mhash.dll
extension=php_mime_magic.dll
extension=php_ming.dll
extension=php_mssql.dll
extension=php_msql.dll
;extension=php_oci8.dll
extension=php_openssl.dll
;extension=php_oracle.dll
extension=php_pdf.dll
extension=php_pgsql.dll
;extension=php_printer.dll
extension=php_shmop.dll
;extension=php_snmp.dll
extension=php_sockets.dll
;extension=php_sybase_ct.dll
extension=php_w32api.dll
extension=php_xmlrpc.dll
extension=php_xslt.dll
extension=php_yaz.dll
extension=php_zip.dll
上面這些,開頭沒有加分號(hào)的是打開的擴(kuò)展,加了分號(hào)的是沒有打開的擴(kuò)展。上面的設(shè)置包含了在 Windows 2003 上默認(rèn)安裝情況下可以打開所有擴(kuò)展(這里列出的是 php 4 的)。
session.save_path = c:\sessions
這個(gè)是 session 文件默認(rèn)保存的目錄,這個(gè)目錄必須是一個(gè)存在的目錄,不然默認(rèn)的 session 功能會(huì)無效。我這里設(shè)置的是一個(gè) ramdisk 上的一個(gè)目錄。將 session.save_path 設(shè)置在 ramdisk 上可以加快 session 處理的速度。如果你沒有安裝 ramdisk,你可以把它指定到其他盤的任何一個(gè)目錄下,如 C:\sessions 目錄、C:\Windows\Temp 目錄等。
OK,基本工作作完了,現(xiàn)在該配置 IIS 了。
打開“ Internet 信息服務(wù)(IIS)管理器”,在“ Web 服務(wù)擴(kuò)展”里,選擇“添加一個(gè)新的 Web 服務(wù)擴(kuò)展”,擴(kuò)展名可填寫“PHP ISAPI 擴(kuò)展”,要求的文件選擇:C:\php\sapi\php4isapi.dll(如果安裝的是 PHP5,則此處是 C:\php\sapi\php5isapi.dll,下同),并設(shè)置擴(kuò)展?fàn)顟B(tài)為允許。
打開“網(wǎng)站”->“屬性”->“ISAPI 篩選器”->“添加”,篩選器名稱可填寫“PHP”,可執(zhí)行文件仍然選擇 C:\php\sapi\php4isapi.dll。
打開“網(wǎng)站”->“屬性”->“主目錄”->“應(yīng)用程序設(shè)置”->“配置”->“應(yīng)用程序擴(kuò)展”->“添加”,可執(zhí)行文件還是選擇 C:\php\sapi\php4isapi.dll。擴(kuò)展名填寫“.php”,動(dòng)作限制為“HEAD,GET,POST”。
打開“網(wǎng)站”->“屬性”->“文檔”->“啟用默認(rèn)內(nèi)容文檔”->“添加”,可以將 index.php 添加為默認(rèn)內(nèi)容文檔。
然后選擇“服務(wù)器機(jī)器名”->“所有任務(wù)”->“重新啟動(dòng) IIS”來重啟 IIS。
測(cè)試
在默認(rèn)網(wǎng)站發(fā)布目錄下,建立一個(gè)測(cè)試頁面:
phptest.php
<?php
phpinfo();
?>
如果打開這個(gè)頁面能夠看到 php 安裝配置信息,就算是安裝成功了。
如果想要更優(yōu)化的執(zhí)行 php 程序,可以安裝 ZendOptimizer-2.6.0-Windows-i386.exe ,這個(gè)東西安裝非常簡單,這里就不介紹了。
升級(jí)
現(xiàn)在升級(jí)就非常簡單了。只需要將新版本的 PHP 二進(jìn)制壓縮包下載下來,將原來的 C:\php 目錄刪除,將新版本解壓縮到 C:\php 目錄中,然后重新啟動(dòng)一下 IIS 就可以了。不需要修改任何配置,也不需要往 System32 目錄中復(fù)制任何文件。