ndfweb.cn

在IIS中安裝PHP


2009-04-23 10:19:51 (6145)



PHP是一種廣泛使用的動態腳本語言,不過在IIS中並沒有內置對PHP語言的支持,因此如果需要使用PHP,必須自行安裝。PHP可以安裝為CGI模式或者ISAPI模式,由於ISAPI模式具有更高的性能,因此我建議大家使用ISAPI模式。PHP具有PHP4、PHP5兩種版本,不同的版本安裝時有些區別,在此我分別進行介紹。

PHP官方網站(http://www.php.net/downloads.php)上提供了PHP解析器的兩種安裝包的下載,分別是完整文件的壓縮包和不包含擴展庫文件的Installer安裝包。Installer安裝包隻能安裝PHP為CGI模式,如果你隻需要讓PHP工作在CGI模式,可以下載Installer安裝包並執行,它可以自動安裝並配置PHP。

 

安裝PHP4

PHP4的安裝比較簡單,在此我僅介紹ISAPI模式的安裝。本文寫作時PHP4的最新版本是4.4.2,下載完整安裝包後,將它解壓到C盤根目錄下,將其目錄改名為PHP(個人習慣 :) ),如下圖所示:

PHP執行時需要php4ts.dll文件,此文件位於“C:\PHP”目錄中。你可以將“C:\PHP”添加到path係統環境變量中,也可以將php4ts.dll文件複製到其他path中已經定義的目錄,例如“C:\windows”、“C:\windows\system32”目錄中;在此我將其複製到“C:\windows”目錄中;

現在我們需要在“C:\windows”目錄下創建PHP配置文件,在PHP目錄下自帶了兩個PHP配置文件樣本,分別名為php.ini-dist和php.ini-recommended。其中php.ini-recommended在性能和安全性上有更大的提高,推薦使用;但是如果使用php.ini-recommended出現問題,則可以使用php.ini-dist,它具有最簡單的配置,但是也具有最好的兼容性。

將php.ini-recommended文件複製到“C:\windows”下,然後改名為“php.ini”;

此時,基礎配置完成,我們需要在IIS中進行進一步的設置。

在IIS管理控製台中,右擊Web服務擴展,然後選擇添加一個新的Web服務擴展

在彈出的新建Web服務擴展對話框,輸入擴展名為php,然後添加按鈕,選擇“c:\php\sapi\php4isapi.dll”,然後勾選設置擴展狀態為允許,再點擊確定

此時,Web服務擴展添加完成,如下圖所示:

現在,我們還需要在Web站點屬性中添加應用程序映射,右擊需要啟用PHP支持的Web站點,選擇屬性;如果要對所有Web站點啟用PHP支持,則右擊網站,然後選擇屬性,在網站全局所做的配置可以應用到所有已有的站點並且將應用到所有新建的Web站點;

在彈出的Web站點屬性對話框上,點擊主目錄標簽,然後點擊配置按鈕;需要注意的是,如果Web站點的執行權限為,那麼你需要修改為純腳本

然後在彈出的應用程序配置對話框上點擊添加按鈕;

在彈出的添加/編輯應用程序擴展名映射對話框上,點擊瀏覽選擇可執行文件為“c:\php\sapi\php4isapi.dll”,然後輸入擴展名為php,點擊確定即可;


依次點擊確定回到IIS管理控製台,然後我們可以在對應站點的主目錄創建一個php腳本文件來測試PHP支持是否啟用,例如我在Web站點根目錄創建一個名為phpinfo.php的文件,包含以下內容:

<?

phpinfo()

?>

然後在瀏覽器中訪問,如下圖所示,ISAPI模式的PHP4安裝成功。

 

如果你需要在PHP4啟用PHP擴展,例如GD2,則需要執行以下三步:

1、修改PHP.ini文件(默認為C:\windows目錄中)中的extension_dir變量,將其指向PHP4的擴展文件目錄,默認為“c:/php/extensions”;

1、

2、修改PHP.ini中後麵的擴展變量,去掉對應擴展庫前注釋用的分號從而啟用此擴展;如下圖,我啟用GD2;

3、最後,也是最關鍵的一步,你需要將PHP擴展所依賴的DLL文件的路徑(“c:\php\dlls”)添加到path變量中,或者將這些DLL文件複製到path變量已定義的路徑中,例如“C:\windows”、“C:\windows\system32”目錄中,然後重啟IIS服務以讓它讀取修改後的配置文件。

從phpinfo上獲取的信息可以看出PHP擴展添加成功。下圖是配置的PHP擴展目錄,

從下圖可以看出GD2擴展配置成功。


 

安裝PHP5

安裝PHP5比安裝PHP4更為複雜,雖然可以采用和安裝PHP4同樣的方式來安裝ISAPI模式的PHP5,但是我建議你同時下載Installer安裝包和完整安裝包,先運行Installer安裝包安裝CGI模式的PHP,然後在CGI模式的基礎上配置PHP5為ISAPI模式。這樣更為方便,更重要的是可以避免一些問題。本文寫作時PHP5的最新版本是5.1.2,下載Installer安裝包和完整安裝包後,首先將完整安裝包解壓到“c:\php5”目錄下,如下圖所示:

和PHP4不同,PHP5中的PHP擴展所依賴的DLL文件並沒有單獨存放在一個子目錄中,而是放置在php5目錄中,因此我們最好為php5目錄添加一個path變量。

右擊我的電腦,選擇屬性,然後在彈出的係統屬性對話框上點擊高級標簽,然後點擊環境變量按鈕;

在彈出的環境變量對話框上,在下部的係統變量列表框中找到path變量並雙擊,然後在彈出的編輯係統變量對話框的變量值中添加“c:\php5”目錄,依次點擊確定返回。

現在運行Installer安裝包,在彈出的歡迎頁和授權協議頁點擊下一步

安裝類型頁,根據你的喜好進行選擇,建議選擇高級,這樣可以自定義更多的選項,選擇後點擊下一步

目標目錄頁,選擇我們將完整安裝包解壓的目錄“c:\php5”,然後點擊下一步

備份替換的文件頁,選擇,點擊下一步

選擇上傳臨時目錄頁,選擇用於緩存上傳文件的臨時目錄,你可以設置為任意目錄,但是客戶訪問Web站點時所使用的用戶賬戶(通常是IUSR_服務器名)必須具有此目錄的讀寫權限;在此我接受默認設置,點擊下一步,PHP安裝程序會自動創建此目錄;

選擇會話保存目錄頁,選擇用於保存用戶會話數據的臨時目錄,你可以設置為任意目錄,但是客戶訪問Web站點時所使用的用戶賬戶(通常是IUSR_服務器名)必須具有此目錄的讀寫權限;在此我接受默認設置,點擊下一步,PHP安裝程序會自動創建此目錄;

郵件配置頁,如果你具有對應的郵件服務器則輸入相應選項,否則直接點擊下一步

錯誤報告級別頁,接受默認的顯示所有錯誤、警告和提示,點擊下一步;在PHP完全安裝成功時,我們應配置PHP不顯示任何錯誤信息,從而增強Web站點的安全性;

選擇服務器類型頁,根據你的服務器類型進行選擇,在此我選擇Microsoft IIS 6 or higher,點擊下一步

文件擴展名頁,接受默認的隻選擇.php,點擊下一步

開始安裝頁點擊下一步;此時,PHP開始進行安裝,最後在安裝完成的對話框上點擊確定

現在我們需要添加客戶訪問Web站點時所使用的用戶賬戶(通常是IUSR_服務器名)對於上傳臨時目錄和會話保存目錄的讀寫權限,在“c:\php5”目錄下選擇sessiondatauploadtemp這兩個目錄後右擊,選擇屬性

然後在安全標簽上添加相應用戶賬戶的讀寫權限,例如在此我添加了IUSR_MUNICH的讀寫權限。

Installer安裝包隻是在Web站點中添加了應用程序映射,並沒有在IIS中添加Web服務擴展,你必須為CGI模式執行文件php-cgi.exe添加一個Web服務擴展後才能使用PHP,如下圖所示:

此時,運行phpinfo來查看,如下圖所示,CGI模式的PHP5已經安裝好了。

現在我們來修改PHP5為ISAPI模式,首先修改應用程序映射,在IIS管理控製台中右擊網站,然後選擇屬性,在彈出的Web站點屬性對話框上,點擊主目錄標簽,然後點擊配置按鈕,在彈出的應用程序配置對話框中,你可以看到php擴展名是映射到“c:\php5\php-cgi.exe”,

雙擊此項,修改其映射到“c:\php5\php5isapi.dll”,然後依次點擊確定返回到IIS管理控製台。

然後在Web服務擴展中進行同樣的修改,如下圖所示,然後點擊確定

在phpinfo中刷新,此時PHP5已經運行在ISAPI模式下了。

當PHP5安裝好後,我們需要修改PHP.ini提高配置的安全性,在PHP.ini中修改以下變量:

  • safe_mode = on : 啟用PHP的安全模式,可以獲得更高的安全性;

  • cgi.force.redirect = 1 : cgi.force.redirect為CGI方式的運行提供了更高的安全性,默認PHP是啟用的,但是在通過Installer安裝包 安裝PHP時會設置為禁用(cgi.force.redirect = 0),你可以簡單的刪除此行(cgi.force.redirect = 0)即可;

  • display_errors = off :不顯示任何PHP的錯誤,這樣可以提高Web站點的安全性,但是不利於Web站點出現問題時的調試;

如果你需要在PHP5啟用PHP擴展,例如不再作為默認擴展的mysql或者GD2,操作方式和PHP4是一樣的,

1、修改PHP.ini文件(默認為C:\windows目錄中)中的extension_dir變量,將其指向PHP5中的擴展文件目錄,在此為“c:/php5/ext”;

2、修改PHP.ini中後麵的擴展變量,去掉對應擴展庫前注釋用的分號從而啟用此擴展;如下圖,我啟用Mysql和GD2;

3、由於在前麵我已經將PHP擴展所依賴的DLL文件的路徑(“c:\php5”)添加到了path變量中,所以在此無需進行其他操作。否則你需要將這些DLL文件複製到path變量已定義的路徑中,例如“C:\windows”、“C:\windows\system32”目錄中。最後重啟IIS服務以讓它讀取修改後的配置文件。

從phpinfo上獲取的信息可以看出PHP擴展添加成功,下麵的圖分別是配置的PHP擴展目錄、GD2和mysql擴展。

 

本文版权:http://www.ndfweb.cn/news-314.html
  NDF俱乐部
  国际域名注册
  建站咨询
简体中文 NDF网站建设淘宝店 | ICO图标在线生成 | 外贸网站建设 | 联系我们
©2007-2025 NDF Corporation 鲁ICP备08005967号 Sitemap - RSSRSS订阅