五月综合缴情婷婷六月,色94色欧美sute亚洲线路二,日韩制服国产精品一区,色噜噜一区二区三区,香港三级午夜理伦三级三

您現(xiàn)在的位置: 365建站網(wǎng) > 365文章 > 在 IIS 7.x 中用 FastCGI 運(yùn)行 PHP

在 IIS 7.x 中用 FastCGI 運(yùn)行 PHP

文章來源:365jz.com     點(diǎn)擊數(shù):824    更新時間:2009-09-17 10:33   參與評論

實(shí)際上從微軟提供 FastCGI 支持以來,在 IIS官方站點(diǎn)上就一直有關(guān)于如何配置 IIS 各個版本下的 FastCGI 支持以及使用 FastCGI 方式運(yùn)行 PHP 的詳細(xì)教程,所以早在 IIS 7.0 剛剛出現(xiàn)沒多久,微軟就已經(jīng)提供了在 IIS 上運(yùn)行 PHP 的一種更優(yōu)化的方式—— FastCGI。但是直到 IIS 7.5 隨著 Windows 7 出現(xiàn),網(wǎng)上還有很多的“大蝦”在教菜鳥們?nèi)绾卧?IIS 7.x 下用配置ISAPI支持的方式(甚至是PHP手冊上不推薦的拷貝文件到系統(tǒng)目錄的方式)來支持 PHP。本文介紹一下在 IIS7.x 中啟用 FastCGI,以及配置 PHP 的方法。

我的配置環(huán)境是 Windows 7 x64 + IIS 7.5,但是本文的內(nèi)容在Windows 7.x 版本中應(yīng)該是完全通用的,因?yàn)?FastCGI 正是從 IIS 7.0 開始成為內(nèi)置組件的。至于之前的版本,需要額外安裝 FastCGI 支持,配置上也略有不同。

Part I. 啟用 IIS 7.x 中的 FastCGI 支持

依次打開 控制面板 | 程序和組件 | 開啟或關(guān)閉Windows功能,英文版對應(yīng)操作為 Control Panel | Programs and Features | Turn Windows Features On or Off. 然后按下圖所示啟用 FastCGI (勾選 CGI 將同時啟用 CGI 和 FastCGI 支持)。其它項你應(yīng)該根據(jù)自己的需要選擇,我這里是為了突出顯示才去掉了其他項目的勾選。

圖一

如果是 IIS7.0,微軟已經(jīng)發(fā)布了一系列升級補(bǔ)丁來修正其中內(nèi)置的 FastCGI 模塊已知的部分問題,你可以根據(jù)自己的系統(tǒng)下載對應(yīng)的補(bǔ)丁進(jìn)行升級:

  • Update for Windows Server 2008
  • Update for Windows Server 2008 x64 Edition
  • Update for Windows Server 2008 for Itanium-based Systems
  • Update for Windows Vista SP1
  • Update for Windows Vista SP1 for x64 based Systems

    Part II. 安裝和配置PHP

    微軟官方文章里建議使用非安全線程版本的PHP(non-thread safe build of php),但是由于該版本下的Zend Optimizer的啟用會比較復(fù)雜,而大部分商業(yè)PHP程序都是離不開Zend Optimizer的,所以建議仍然采用安全線程版本的PHP。請從 PHP官方網(wǎng)站 下載最新版本的 PHP Zip格式壓縮包,本文寫作時使用的是 PHP 5.2.9-2 版,下載地址:PHP 5.2.9-2 zip package 。

    下載以后,將其解壓縮到任意目錄(本文中使用 D:\server\php,后面所有涉及到此路徑的地方均表示為 [PHP Install Dir]),然后將目錄中的 php.ini-recommend 改名為 php.ini 。用任意的文本編輯器打開這個文件,查找并確認(rèn)以下設(shè)置:

    • fastcgi.impersonate = 1
    • cgi.fix_pathinfo=1
    • cgi.force_redirect = 0
    • open_basedir 指向包含 php 程序的網(wǎng)站路徑。 【可選項】
    • extension_dir = "./ext" ;注意:以往版本中這里往往要使用絕對路徑,但是現(xiàn)在可以用這樣的方式進(jìn)行通用配置。
    • 刪除你需要激活的php擴(kuò)展加載項前面的分號,例如:
      extension=php_mssql.dll
      extension=php_mysql.dll
      注意:不是所有的項目都可以激活的,最好只激活你用到的,如果激活某一項之后運(yùn)行不了,請重新注釋掉該項并重啟IIS。

    設(shè)置完畢以后,可以啟動一個命令提示行窗口(cmd.exe),運(yùn)行 [PHP Install Dir]/php –info 檢查一下 php 是否可以正確運(yùn)行,如果正確,會輸出一系列的環(huán)境變量提示等。

    Part III. 配置 IIS 處理 PHP 請求

    打開 IIS 管理器,左邊選擇你的計算機(jī),中間窗口點(diǎn)擊“Handler Mapping”(中文版的朋友對照一下圖標(biāo)了,我不太確定在中文版操作系統(tǒng)中這個項目會翻譯成什么),然后在右邊點(diǎn)擊“Add Module Mapping…”(添加模塊映射)。

    在彈出的 Add Module Mapping 對話框中,按照下圖填寫(Executable(optional)一項請?zhí)顚懩阕约旱陌惭b路徑,即 [PHP Install Dir]/php-cgi.exe ):

    Add Module Mapping 

    填寫好之后,點(diǎn) OK,會彈出一個確認(rèn)對話框,問你是不是真的要添加這個模塊映射。點(diǎn) Yes 繼續(xù)。

    file3

    到此就完成了 PHP 在 IIS 7.x 下的安裝,在你的網(wǎng)站目錄下創(chuàng)建一個文本文件,文件名后綴為.php,比如test.php,該文件的內(nèi)容只有一行:

    <?php phpinfo(); ?>

    然后用瀏覽器瀏覽這個文件(通常是http://localhost/test.php),正常情況下,就會看到PHP的默認(rèn)信息頁面了。

    phpinfo

    根據(jù)不同的配置,看到的信息可能有所不同,我這里的抓圖已經(jīng)安裝了 Zend Optimizer v3.3.3,默認(rèn)當(dāng)然是沒有的,你可以自己下載并安裝,Zend Optimizer 的安裝和以前所有版本的一樣,就算沒有教程,跟著安裝向?qū)б徊揭徊竭x擇也能成功安裝。我這里就不贅述了。此外還有 MySQL、PhpMyAdmin 等的安裝,也都是一樣的。雖然相關(guān),但都和 IIS 版本無關(guān)。就不講了。

    以前配置過PHP4,或者在 IIS 6.0 以前版本中以 ISAPI 方式配置過的朋友應(yīng)該能發(fā)現(xiàn),使用 FastCGI 方式在 IIS 7.x 中配置 PHP,已經(jīng)大大簡化,不用像 PHP 4那樣向系統(tǒng)文件夾拷貝文件,不用像 IIS 6.0 以前版本那樣修改環(huán)境變量,而且也不像 ISAPI 方式那樣要設(shè)置 extension_dir 的絕對路徑……

    總而言之,PHP 在 Windows 下已經(jīng)不像以前一樣僅僅是不得以而為之的一個東西,它的安全性、穩(wěn)定性、運(yùn)行效率已經(jīng)大大提高。除了 Linux + Apache + PHP + MySQL,我們現(xiàn)在也可以很方便地使用 Windows + IIS + PHP + MSSQL 了。

    首發(fā)地址:刀刀博客-在IIS7.x中使用FastCGI運(yùn)行php
  • Tag標(biāo)簽: Windows 7,FastCGI,IIS,PHP

    如對本文有疑問,請?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會為你解答?。?點(diǎn)擊進(jìn)入論壇

    發(fā)表評論 (824人查看,0條評論)
    請自覺遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴(yán)禁發(fā)布色情、暴力、反動的言論。
    昵稱:
    最新評論
    ------分隔線----------------------------

    其它欄目

    · 建站教程
    · 365學(xué)習(xí)

    業(yè)務(wù)咨詢

    · 技術(shù)支持
    · 服務(wù)時間:9:00-18:00
    365建站網(wǎng)二維碼

    Powered by 365建站網(wǎng) RSS地圖 HTML地圖

    copyright © 2013-2024 版權(quán)所有 鄂ICP備17013400號