windows2008系統(tǒng)IIS7配置PHP與MySQL |
發(fā)布時間: 2012/9/14 18:41:35 |
windows2008的IIS7下配置PHP+MySQL+ZendOptimizer-windows2008下安裝phpwind8.0(博主有個小請求:如果哪位看了該帖對您有什么幫助或我的總結(jié)有什么錯誤歡迎點評并提出寶貴意見及建議,成分感謝!)
具體軟件環(huán)境如下: windows2008標準版,IIS7.0(windows2008系統(tǒng)自帶), PHP5.2.14,MySQL5.1.48,ZendOptimizer以上軟件三款軟件均官方下載, 我剛開始配置時軟件是從百度隨便搜索下載的,但始終配置不成功,后來 從官方網(wǎng)站下載問題就少多了,強烈建議從官方下載會少走些彎路。 1.在配置之前要保證win2008的IIS7安裝比較全面像Web萬維網(wǎng)服務器中的組件能安裝的最好都安裝上 尤其是ISAPI擴展ISAPE篩選器,CGI要安裝上,并且要添加上ISAPI或CGI限制,這一步操作很關鍵關系到下邊的成敗,添加操作如下打開IIS管理器,點擊起始頁下邊的那一項,該項是你電腦名字命名的而并不你的站點名字,一定要看清楚,在右邊窗口中找到并打開"ISAPI或CGI限制",點擊右鍵"添加""ISAPI或CGI路徑"定位D:\php5\php5isapi.dll,描述就隨便寫了,我寫的是php,并將"允許執(zhí)行擴展路徑"打上對鉤,確定OK。 2.安裝PHP: 比較簡單如果是壓縮版的解壓到了D:\php5下,例如我的是安裝版的也指定到了d:\php5目錄中, 建議PHP,Mysql都安裝在非系統(tǒng)盤下以免日后麻煩,安裝的目錄也不要帶有中文,以免接下來的配置及日后應用出現(xiàn) 未知的錯誤,同時在系統(tǒng)的path變量中加入d:\php5和d:\php5\ext,當然要注意格式如果在變量內(nèi)容尾部加要保證d:\php5 前邊有個分號;并且d:\php5和d:\php5\ext之間也要有個分號,添加好后確定,要重啟電腦才會生效。 3.配置PHP: 將D:\php5下的php.ini-list文件名更改為php.ini,打開php.ini進行配置。 先修改extension_dir,它的目錄指向必須準確,即extension_dir = "d:/php5/ext",找到register_globals = Off 修改為On,再定位到Windows Extensions將以下常用的dll文件開啟,開啟的方法就是將前邊的分號;去掉即可 extension=php_bz2.dll extension=php_gd2.dll extension=php_mbstring.dll extension=php_mysql.dll extension=php_mysqli.dll extension=php_pdo_mysql.dll extension=php_pdo_odbc.dll extension=php_xmlrpc.dll(注意如果加上了extension=php_curl.dll我這里會出錯顯示FastCGI 進程意外退出禁用后正常) 找到disable_functions =,修改為: disable_functions =phpinfo,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server 保存好后,同時將php.ini復制到c:\windows下一份。 4.配置IIS分兩步走分別是:讓IIS7以ISAPI方式配置PHP5.2.14和讓IIS7以FastCgi方式配置PHP5.2.14,這兩種模式可以兩種并存也可以二選一,建議選擇后者. 第一步讓IIS7以ISAPI方式配置PHP: 在IIS管理器中新建一個站點和平時建立asp站點操作過程一樣,如我的站點名字為phptest建立完成后關鍵在下邊的設置,將IIS根據(jù)站點自動生成應用程序池phptest點擊右鍵選擇->基本設置,將.NET Framework版本下的值修改為"無托管代碼",再將托管管道模式(M)修改為:"經(jīng)典"->確定。 點擊一下站點phptest,在右邊的窗口中雙擊打開"ISAPI篩選器",再右擊"添加","篩選器名稱"輸入php(這個名稱可以自定義),下邊的"可執(zhí)行文件"選擇一下右邊的瀏覽按鍵,將窗口定位到D:\php5中,選擇php5isapi.dll,然后確定如果再出現(xiàn)什么提示就選擇YES就行。 同樣在站點的右邊窗口中選擇打開"處理程序映射,右鍵盤單擊選擇"添加腳本映射","請求路徑"輸入*.php,"可執(zhí)行文件"參考上邊添加ISAPI篩選器的操作同樣選擇文件php5isapi.dll,名稱我的定義為php-isapi,可以隨便起名,點擊確定,出現(xiàn)提示后點擊YES。到此IIS7就可以以ISAPI方式運行php程序了。""接下來測試一下配置的效果,在phptest站點的默認文檔中添加index.php,這個index.php文件的內(nèi)容如下: <?php phpinfo();?>保存好后,如果你的站點地址是本機端口是默認的80,在IE輸入http://127.0.0.1/就可以看到php服務器的介紹信息了參考截圖。如果能順利看到這個信息就說明你的php可以正常的以ISAPI方式運行了。 第二步讓IIS7以FastCgi方式配置PHP: 接著修改IIS,點擊打開IIS站點phptest右邊窗口的處理程序映射,右鍵盤單擊選擇"添加模塊映射",這步看清楚了:不是腳本映射而是模塊映射,"請求路徑"輸入*.php,模塊選擇"FastCGIModule"可執(zhí)行文件"參考上邊添加ISAPI篩選器的操作,不過這里要將文件的*.dll類型修改為*.exe類型,將文件瀏覽窗口定位到d:\php5中選擇文件php-cgi.exe,點擊確定,名稱隨便起我的叫php-fastcgi,點擊確定在出現(xiàn)的提示中選YES。 接著打開d:\php5中的php.ini,找到以下地方進行修改: fastcgi.impersonate=1 默認為0,如果使用IIS,你需要改為1將其開啟,并將前邊的分號;去掉以保證啟用該項功能。 cgi.fix_pathinfo=1修改為1并將前邊的分號;去掉以保證啟用該項功能。 cgi.force_redirect=0 默認開啟,如果你使用IIS,可以將其關閉或為其加上分號;我這里默認是關閉的所以不用管。其次指定php工作的時區(qū):date.timezone,即date.timezone= Asia/Shanghai.(當然這些需要用的的項目前邊的分號;都要去掉的下邊不再重復)到此為止就可以讓IIS7以FastCgi方式運行php程序了。 而且如果你細心的話會發(fā)現(xiàn)在兩次運行index.php進行php信息測試時,index.php中的Server API項在沒有進行FastCGI配置前是 ISAPI, 進行FastCGI配置后是CGI/FastCGI。 5.安裝mysql,這里我就不再啰嗦了,網(wǎng)上有許多相關信息,當然也可參考我博客中"MySql5.0安裝詳細圖解"http://hi.baidu.com/xiaochonga10/blog/item/31ba0cfa74aaa318a8d311d3.html進行安裝配置 記得在安裝完后要連接測試一下mysql,測試方法如下:在windows2008的cmd狀態(tài)下輸入mysql -uroot -p 接著按屏幕提示輸入當時安裝mysql時設置的密碼,如果出現(xiàn)提示mysql>說明安裝正常,否則自己去檢查原因吧。 配置到這里你如果安裝dz或pw論壇是完全可以安裝的,如果你安裝不成功,告訴你一個找錯誤的方法,在安裝論壇時一般會對你配置的環(huán)境做個檢測,有哪個項目不符合論壇運行環(huán)境的要求會有清楚的提示。如果一直提示mysql出錯建議你換個版本安裝試試,我之前試了三個版本最后才從官方下載的mysql5.1.48成功的。 6.安裝ZendOptimizer3.3.3,這個東東剛開始我也不了解它,后來參考了些資料知道安裝它是可以極大的提高iis或apache執(zhí)行php效率的,我在安裝上這個東西后出的問題也最多,安裝它時是非常簡單的,一路默認就可以直到安裝成功。不過在出現(xiàn)提示please choosethe root folder of your web server時,默認是進行不下去的,需要將默認的類似這樣的%system%\inetpub的東西修改成隨便一個你硬盤中真實存在的路徑就行,我的是c:\inetpub.ZendOptimizer安裝成功與否要看c:\windows下的php.ini,成功的話php.ini文件尾部會被加入以下信息[Zend] zend_extension_manager.optimizer_ts="C:\Program Files\Zend\ZendOptimizer-3.3.0\lib\Optimizer-3.3.0" zend_extension_ts="C:\Program Files\Zend\ZendOptimizer-3.3.0\lib\ZendExtensionManager.dll" 并且在瀏覽器中運行index.php測試頁面時,會出現(xiàn)Zend Optimizer一個專欄信息內(nèi)容。如果大家默認ZendOptimizer的安裝是不需要再進行多余配置的,如果想讓它工作的更出色自己可以參考官方英文pdf說明。這里我要特別強調(diào)一下我配置時出的問題,問題在于安裝上它我再運行php測試頁時提示我“FastCGI進程意外退出出錯信息”,我根據(jù)網(wǎng)上的指導在cmd下運行php -v結(jié)果發(fā)現(xiàn)有許多dll模塊沒被加載,所以就去d:\php5下的php.ini配置文件看,因為在安裝 ZendOptimizer之前都是正常的,怎么安裝后會提示不能加載dll模塊,我檢查d:\php5下的php.ini后一切正常,于是就卸載了再安裝又是用優(yōu)化大理清理垃圾和注冊表又是再檢查修改d:\php5下的php.ini,最后我才發(fā)現(xiàn),c:\windows下的php.ini文件,被ZendOptimizer不知道什么時候給修改了,而且修改關鍵的幾個地方像extension_dir這么關鍵的地方竟然被禁用了,于是又將c:\windows下的php.ini文件從頭到腳重新檢查配置了一下,再次去瀏覽器中運行測試頁,又提示我這個錯誤“Warning: phpinfo() has been disabled for security reasons in D:\phptest\index.php on line 2” 原來是php出于安全考慮禁了phpinfo()函數(shù),而我的php測試頁內(nèi)容就是<?phpinfo()?>,于是又去修改了 d:\php5和c:\windows中的php.ini中的disable_functions =,將它的=后邊內(nèi)容中的phpinfo刪除后才算是最終解決了問題。 總結(jié):回顧這一路下來的配置真是太考驗人了,一個小地方不注意都不行, 1.主要有兩個錯誤提示: "FastCGI進程意外退出出錯信息" "Warning: phpinfo() has been disabled for security reasons in", 請注意以上細節(jié)及解決方法,希望各位能順利配置成功。 2.另外在每次修改php.ini后都要將IIS重新啟用一次,這樣才會使修改后的配置生效。 3.php版本暫時不要選擇5.3.2因為如果你安裝ZendOptimizer3.3.3還不支持php5.3.2。 4.環(huán)境配置不成功要在cmd下用php -v命令測試根據(jù)錯誤提示來解決很有用的 億恩科技地址(ADD):鄭州市黃河路129號天一大廈608室 郵編(ZIP):450008 傳真(FAX):0371-60123888 聯(lián)系:億恩小凡 QQ:89317007 電話:0371-63322206 本文出自:億恩科技【1tcdy.com】 |