Azure網站上的PHP — 架構

Azure是一個開放而靈活的平臺。您可以選擇最適合或者最擅長的語言(包括 ASP.NET、PHP、Node.js、Python 和經典 ASP)創建基於Azure網站的應用程序。在隨後的幾篇文章中,我們將討論Azure網站上的PHP。

首先,我們討論Azure網站上PHP的架構。

下圖描述了Windows Azure網站上PHP的架構。該架構與本地IIS上的PHP配置並無不同。


PHP請求的處理流程如下:

1. 客戶端HTTP請求到達HTTP.SYS(處理HTTP請求的內核模塊)
2. HTTP請求被轉發到網站的工作進程W3WP.EXE
3. IIS FASTCGI模塊負責處理PHP請求。
4. 根據具體情況,FASTCGI模塊啓動一個新的PHP-CGI.EXE,然後將請求轉發到新的PHP-CGI.EXE;或者將請求轉發到一個現有的PHP-CGI.EXE。FASTCGI與PHP-CGI.EXE之間的通信採用命名管道。
5. PHP-CGI.EXE處理PHP請求,將結果返回給FASTCGI模塊
6. 最終響應通過HTTP.SYS發回客戶端。

在Azure網站上部署PHP時,您需要注意下面的事項:

1. Azure網站默認啓用PHP,如果不需要PHP可以通過管理門戶網站關閉PHP功能。
2. Azure網站不允許客戶修改PHP的系統級別設置。
3. Azure網站目前支持PHP 5.3,5.4,5.5版本,我們會在後續的文章中討論如何配置其它版本。
4. Azure網站目前只支持32位PHP。在管理門戶網站將網站設置爲64位模式,只是將W3WP.EXE設置爲64位。PHP-CGI.exe仍然是32位。
5. PHP-CGI.EXE的實例數目由FASTCGI模塊根據負載和機器資源情況自動決定。

下一篇文章我們將討論如何配置Azure網站上的PHP。

發佈了33 篇原創文章 · 獲贊 0 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章