IIS 6 的 PHP 最佳組態方法
IIS 6 的 PHP 最佳組態方法
雖然 LAMP 組合很不錯,但是如果想要架設一台同時支持 PHP、ASP、ASP.NET、JSP、Perl 的 Web 虛擬主機伺服器,還是用 Windows 2003 的 IIS 6 最好。網上有很多介紹在 IIS 6 上組態 PHP 的文章,但是那些方法不是效能不好,就是昇級麻煩。下面的方法可以讓你在第一次組態好後,能夠非常方便的進行昇級。
這裡所說的昇級,是指從某個 php4 版本昇級到另一個 php4 版本,或者從某個 php5 版本昇級到另一個 php5 版本,而不是指從 php4 昇級到 php5。
準備:
1、一台安裝好的 Windows 2003 伺服器,並且已經安裝了 IIS 6。
2、下載 windows 版的 PHP 二進制壓縮包
安裝:
解壓縮 PHP 二進制壓縮包到 C:\php 目錄下(這裡假設 C: 盤是系統碟,即安裝了Windows 系統的盤,如果系統碟是 D: 盤,則解壓縮到 D:\php 目錄下,以此類推,下同)。
然後開啟「我的電腦」->「內容」->「進階」->「環境變數」->「系統變數」->「path」,編輯其值,在前面增加下面的路徑位址:
C:\php;C:\php\dlls;C:\php\extensions;C:\php\sapi;
將 php.ini-dist 或 php.ini-recommended 複製到 C:\Windows 目錄下,並改名為 php.ini,一般正式發怖網站的伺服器用 php.ini-dist,而作為偵錯用的伺服器用 php.ini-recommended 更好。當然一般情況下,這個 php.ini 還是需要根據實際情況來修改的。
下面來介紹一下幾個必要的修改選項:
extension_dir = "C:\php\extensions"
這個是 PHP 增強所放置的目錄,請確保跟你實際安裝的目錄相同。
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
上面這些,開頭沒有加分號的是開啟的增強,加了分號的是沒有開啟的增強。上面的設定包含了在 Windows 2003 上預設值安裝情況下可以開啟所有增強(這裡列出的是 php 4 的)。
session.save_path = c:\sessions
這個是 session 文件預設值儲存的目錄,這個目錄必須是一個存在的目錄,不然預設值的 session 功能會無效。我這裡設定的是一個 ramdisk 上的一個目錄。將 session.save_path 設定在 ramdisk 上可以加快 session 處理的速度。如果你沒有安裝 ramdisk,你可以把它指定到其他盤的任何一個目錄下,如 C:\sessions 目錄、C:\Windows\Temp 目錄等。
OK,基本工作作完了,現在該組態 IIS 了。
開啟「 Internet 訊息服務(IIS)管理器」,在「 Web 服務增強」裡,選項「增加一個新的 Web 服務增強」,副檔名可填寫「PHP ISAPI 增強」,要求的文件選項:C:\php\sapi\php4isapi.dll(如果安裝的是 PHP5,則此處是 C:\php\sapi\php5isapi.dll,下同),並設定增強狀態為允許。
開啟「網站」->「內容」->「ISAPI 篩選器」->「增加」,篩選器名稱可填寫「PHP」,可執行文件仍然選項 C:\php\sapi\php4isapi.dll。
開啟「網站」->「內容」->「主目錄」->「應用程式設定」->「組態」->「應用程式增強」->「增加」,可執行文件還是選項 C:\php\sapi\php4isapi.dll。副檔名填寫「.php」,動作限制為「HEAD,GET,POST」。
開啟「網站」->「內容」->「我的文件」->「啟用預設值內容我的文件」->「增加」,可以將 index.php 增加為預設值內容我的文件。
然後選項「伺服器機器名」->「所有工作」->「重新啟動 IIS」來重新啟動 IIS。
測試
在預設值網站發怖目錄下,建立一個測試頁面:
下載:phptest.php
<?php
phpinfo();
?>
如果開啟這個頁面能夠看到 php 安裝配置資訊,就算是安裝成功了。
如果想要更最佳化的執行 php 程序,可以安裝 ZendOptimizer-2.6.0-Windows-i386.exe ,這個東西安裝非常簡單,這裡就不介紹了。
昇級
現在昇級就非常簡單了。只需要將新版本的 PHP 二進制壓縮包下載下來,將原來的 C:\php 目錄移除,將新版本解壓縮到 C:\php 目錄中,然後重新啟動一下 IIS 就可以了。不需要修改任何組態,也不需要往 System32 目錄中複製任何文件。是不是很方便啊?
|