IIS6環(huán)境下的PHP最佳配置方法
雖然 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í)。
這里所說(shuō)的升級(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: 盤(pán)是系統(tǒng)盤(pán),即安裝了Windows 系統(tǒng)的盤(pán),如果系統(tǒng)盤(pán)是 D: 盤(pán),則解壓縮到 D:\php 目錄下,以此類推,下同)。
然后打開(kāi)“我的電腦”->“屬性”->“高級(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í)際情況來(lái)修改的。
下面來(lái)介紹一下幾個(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
上面這些,開(kāi)頭沒(méi)有加分號(hào)的是打開(kāi)的擴(kuò)展,加了分號(hào)的是沒(méi)有打開(kāi)的擴(kuò)展。上面的設(shè)置包含了在 Windows 2003 上默認(rèn)安裝情況下可以打開(kāi)所有擴(kuò)展(這里列出的是 php 4 的)。
session.save_path = c:\sessions
這個(gè)是 session 文件默認(rèn)保存的目錄,這個(gè)目錄必須是一個(gè)存在的目錄,不然默認(rèn)的 session 功能會(huì)無(wú)效。我這里設(shè)置的是一個(gè) ramdisk 上的一個(gè)目錄。將 session.save_path 設(shè)置在 ramdisk 上可以加快 session 處理的速度。如果你沒(méi)有安裝 ramdisk,你可以把它指定到其他盤(pán)的任何一個(gè)目錄下,如 C:\sessions 目錄、C:\Windows\Temp 目錄等。
OK,基本工作作完了,現(xiàn)在該配置 IIS 了。
打開(kāi)“ Internet 信息服務(wù)(IIS)管理器”,在“ Web 服務(wù)擴(kuò)展”里,選擇“添加一個(gè)新的 Web 服務(wù)擴(kuò)展”,擴(kuò)展名可填寫(xiě)“PHP ISAPI 擴(kuò)展”,要求的文件選擇:C:\php\sapi\php4isapi.dll(如果安裝的是 PHP5,則此處是 C:\php\sapi\php5isapi.dll,下同),并設(shè)置擴(kuò)展?fàn)顟B(tài)為允許。
打開(kāi)“網(wǎng)站”->“屬性”->“ISAPI 篩選器”->“添加”,篩選器名稱可填寫(xiě)“PHP”,可執(zhí)行文件仍然選擇 C:\php\sapi\php4isapi.dll。
打開(kāi)“網(wǎng)站”->“屬性”->“主目錄”->“應(yīng)用程序設(shè)置”->“配置”->“應(yīng)用程序擴(kuò)展”->“添加”,可 執(zhí)行文件還是選擇 C:\php\sapi\php4isapi.dll。擴(kuò)展名填寫(xiě)“.php”,動(dòng)作限制為“HEAD,GET,POST”。
打開(kāi)“網(wǎng)站”->“屬性”->“文檔”->“啟用默認(rèn)內(nèi)容文檔”->“添加”,可以將 index.php 添加為默認(rèn)內(nèi)容文檔。
然后選擇“服務(wù)器機(jī)器名”->“所有任務(wù)”->“重新啟動(dòng) IIS”來(lái)重啟 IIS。
測(cè)試
在默認(rèn)網(wǎng)站發(fā)布目錄下,建立一個(gè)測(cè)試頁(yè)面:
下載:phptest.php
phpinfo();
?>
如果打開(kāi)這個(gè)頁(yè)面能夠看到 php 安裝配置信息,就算是安裝成功了。
如果想要更優(yōu)化的執(zhí)行 php 程序,可以安裝 ZendOptimizer-2.6.0-Windows-i386.exe ,這個(gè)東西安裝非常簡(jiǎn)單,這里就不介紹了。
升級(jí)
現(xiàn)在升級(jí)就非常簡(jiǎn)單了。只需要將新版本的 PHP 二進(jìn)制壓縮包下載下來(lái),將原來(lái)的 C:\php 目錄刪除,將新版本解壓縮到 C:\php 目錄中,然后重新啟動(dòng)一下 IIS 就可以了。不需要修改任何配置,也不需要往 System32 目錄中復(fù)制任何文件。
關(guān)鍵字:PHP、服務(wù)器、IIS、應(yīng)用程序
新文章:
- CentOS7下圖形配置網(wǎng)絡(luò)的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統(tǒng)后丟失windows啟動(dòng)項(xiàng)
- CentOS單網(wǎng)卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗(yàn)證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網(wǎng)打印機(jī)IP講解
- CentOS7使用hostapd實(shí)現(xiàn)無(wú)AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網(wǎng)絡(luò)重啟出錯(cuò)
- 解決Centos7雙系統(tǒng)后丟失windows啟動(dòng)項(xiàng)
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統(tǒng)有什么不同呢
- Centos 6.6默認(rèn)iptable規(guī)則詳解