綠色資源網(wǎng):您身邊最放心的安全下載站! 最新軟件|熱門排行|軟件分類|軟件專題|論壇轉帖|廠商大全

綠色資源網(wǎng)

技術教程
您的位置:首頁服務器類Web服務器 → IIS7配置PHP環(huán)境完整圖文教程

IIS7配置PHP環(huán)境完整圖文教程

我要評論 2013/10/16 13:35:12 來源:綠色資源網(wǎng) 編輯:m.sonlywya.cn [ ] 評論:0 點擊:236次

我們知道php配置有幾種:

1、CGI方式加載PHP環(huán)境,通常就是IIS里面配置解釋器為php.exe,早期比較常見,目前使用較少。 
特點是:穩(wěn)定,但效率太低。

2、ISAPI方式加載PHP環(huán)境,通常就是IIS里面配置解釋器為php5isapi.dll,目前使用最多,應用最廣。 
特點是:多線程,效率較高,但不夠穩(wěn)定。

3、FastCGI方式加載PHP環(huán)境,在IIS環(huán)境里并不常見,但其它系統(tǒng)環(huán)境應用還是有的,不過IIS7.0開始內(nèi)置FastCGI了。 
特點是:高效率,高穩(wěn)定性,屬于將來發(fā)展趨勢。

我試過其他的特別麻煩,PHP 5.3發(fā)布的Windows版已經(jīng)不支持ISAPI模式了,所以我打算按微軟推薦的FastCGI方式運行PHP。

我用的就第三種,也是最好最快的,因為FastCGI大大加強了IIS處理PHP的能力,能迅速提高PHP站點的反應速度和生產(chǎn)力,

并具有更高的穩(wěn)定性和安全性.

下載地址:http://windows.php.net/download/

里面有好多種,要那種呢?

PHP現(xiàn)在推出5.3.2版本了,不過下載的時候有幾個不同版本選擇。那就是VC6 X86和VC9 X86。 首先我來解答: 

VC6是什么? 
VC6就是legacy Visual Studio 6 compiler,就是使用這個編譯器編譯的。 
VC9是什么? 
VC9就是the Visual Studio 2008 compiler,就是用微軟的VS編輯器編譯的。

那我們?nèi)绾芜x擇下載哪個版本的PHP呢? 
如果你是在windows下使用Apache+PHP的,請選擇VC6版本; 
如果你是在windows下使用IIS+PHP的,請選擇VC9版本;

那Non Thread Safe是什么? 
Non Thread Safe就是非線程安全; 
Thread Safe 是什么? 
Non Thread Safe 是線程安全; 

FastCGI執(zhí)行方式是以單一線程來執(zhí)行操作,所以不需要進行線程的安全檢查,除去線程安全檢查的防護反而可以提高執(zhí)行效率,所以,如果是以 FastCGI(無論搭配 IIS 6 或 IIS 7)執(zhí)行 PHP ,都建議下載、執(zhí)行 non-thread safe 的 PHP (PHP 的二進位檔有兩種包裝方式:msi 、zip ,請下載 zip 套件)所以我們選擇NO-Thread Safe 版本的PHP來使用。
而線程安全檢查正是為ISAPI方式的PHP準備的,因為有許多php模塊都不是線程安全的,所以需要使用Thread Safe的PHP。

下載安裝,我安裝默認路徑了:

記得選中第三項:IIS FASTCGI

如果沒有安裝IIS FASTCGI的 下一步會提示沒有安裝的,下載安裝就行了

FastCGI  for IIS 6  7   http://www.iis.net/expand/fastcgi

安裝好后,繼續(xù)下一步,我按照默認了:

安裝完畢后,就是配置了。

這種配置有兩種方法,我用cmd配置,一條命令就行了。

轉到剛才安裝CGI的目錄下: 

>cd C:\WINDOWS\system32\inetsrv

>cscript fcgiconfig.js -add -section:"PHP" -extension:php -path:"C:\Program Files\PHP\php-cgi.exe"

注意:path:"xxxx\php-cgi.exe” 是你安裝php的目錄

> cscript fcgiconfig.js -set -section:"PHP" -InstanceMaxRequests:10000 
> cscript fcgiconfig.js -set -section:"PHP" -EnvironmentVars:PHP_FCGI_MAX_REQUESTS:10000

ok!完畢!

測試下:

新建一個.php文件,里面

<?php

phpinfo();

?>

保存!

運行,出現(xiàn)下面頁面,說明配置成功了!

這樣的方法 IIS就不用怎么配置,他都會自動配置好了!微軟提供的配置更加詳細 !

如果按上面的教程配置好后,運行php測試頁面,出現(xiàn)了500錯誤。

那就設置php.ini中的date.timezone項。

我這里設置成上海時區(qū):date.timezone = Asia/Shanghai

設置完后就一切正常了!

在這里會出現(xiàn)幾個問題的,需要注意一下:(我自己配置的時候遇到的問題)

1.對于空機子的服務器,一般沒有安裝別的什么數(shù)據(jù)庫軟件的,所以大家運行一下C:\Program Files\PHP\php-cgi.exe,是否會出現(xiàn)問題,然后解決問題。(用cmd試運行)

運行C:\Program Files\PHP\php-cgi.exe,如果能進入命令窗口并且只有光標,說明FastCGI能正常調(diào)用php-cgi,否則會提示錯誤,如圖

 

2.運行測試頁面就顯示500錯誤(我自己遇到了問題,然后在網(wǎng)上找到了解決方法。)

解決方法:

打開IE----INTERNET選項--------高級------------顯示友好的HTTP錯誤前面的勾去掉,再出現(xiàn)錯誤的時候會提示你錯誤的具體提示。

提示:

PHP Warning: Unknown: open(c:\php\upload_tmp\sess_li3ardp5qtalfj4, O_RDWR) failed: Permission denied (13) in Unknown on line 0 PHP Warning:

Unknown: open(c:\php\upload_tmp\sess_li3ardbp5qtalfj4, O_RDWR) failed: Permission denied (13) in Unknown on line 0 PHP Warning: Unknown: Failed

to write session data (files). Please verify that the current setting of session.save_path is correct (c:\php\upload_tmp) in Unknown on line 0 
這說明我沒有給c:\php\upload_tmp寫入權限,給了.寫入權限,解決!

關鍵詞:IIS7,PHP

閱讀本文后您有什么感想? 已有 人給出評價!

  • 1 歡迎喜歡
  • 1 白癡
  • 1 拜托
  • 1 哇
  • 1 加油
  • 1 鄙視