Windows 2003+IIS6+PHP5.4+配置PHP支持空間的方法

 

寫在前面
一、若是不管怎麼弄都沒法讓php支持鏈接mssql
則能夠下載 FreeTDS 插件5.3,以便訪問 SQL Server 數據庫 
php5.2 
Thread Safe 
http://download.moodle.org/download.php/dblib/php52/DBLIB_TS.zip 
NOT Thread Safe 
http://download.moodle.org/download.php/dblib/php52/DBLIB_NOTS.zip
php5.3
Thread Safe
http://download.moodle.org/download.php/dblib/php53/DBLIB_TS.zip
NOT Thread Safe
http://download.moodle.org/download.php/dblib/php53/DBLIB_NOTS.zip


二、若是不管怎麼弄都沒法讓php支持鏈接mssql 則可使用sqlsrv來讓php鏈接mssql數據庫(親測php5.3.28可用)
方法:
下載sqlsrv20
http://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx
Microsoft Drivers for PHP for SQL Server 2.0 -- 可用
Microsoft Drivers for PHP for SQL Server 3.0 -- 不支持windows2003 沒有親測

 

一、下載phpphp

http://windows.php.net/download/mysql

ISAPI + Thread Safe
FastCgi + No Thread Safe 
PHP程序從PHP5.3之後的版本就再也不用ISAPI進行擴展在IIS裏運行了,因此在PHP5.3+壓縮包下載解壓後的文件裏面也沒有php5isapi.dll,取而代之的是php5nsapi.dll。

使IIS6支持FastCgi
http://www.iis.net/downloads/microsoft/fastcgi-for-iis
安裝擴展後在IIS 的 「Web 服務擴展」裏啓用

①如何選擇PHP5.4.10的VC6版本和VC9版本sql

VC6版本是使用Visual Studio 6編譯器編譯,若是PHP是用Apache來架設,那就選擇VC6版本。     數據庫

VC9版本是使用Visual Studio 2008編譯器編譯,若是PHP是用IIS來架設,那就選擇VC9版本。windows

選擇的原則:api

1。在windows下使用Apache+PHP的,請選擇VC6版本;                 安全

2。在windows下使用IIS+PHP的,請選擇VC9版本;app

②如何選擇PHP5.4.10的Thread Safe版本和Non Thread Safe版本   sqlserver

從字面上理解,Thread Safe是線程安全,執行時會進行線程(Thread)安全檢查,以防止有新要求就啓動新線程的CGI執行方式而耗盡系統資源。網站

Non Thread Safe是非線程安全,在執行時不進行線程(Thread)安全檢查。

 

二、配置PHP

PHP5.4.10安裝目錄下是沒有PHP.ini這個文件的,只有php.ini-development和php.ini-production,咱們將php.ini-development複製一個,而後重命名爲 php.ini

打開php.ini, 修改PHP.ini文件:

1。查找display_errors改成:display_errors = On

2。查找display_startup_errors改成:display_startup_errors = On

3。查找error_prepend_string改成:error_prepend_string = "<br><font color=#ff0000>"

4。查找error_append_string改成:error_append_string = "</font><br><br>"

5。查找extension_dir改成:extension_dir = "D:\PHP\PHP\ext\"

6。查找fastcgi.impersonate改成:fastcgi.impersonate = 1

8。查找date.timezone改成:date.timezone = PRC

7。下列代碼按下修改,在Windows Extensions中去除擴展前面的分號(;)
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll  
extension=php_mysqli.dll
extension=php_mcrypt.dll
extension=php_pdo.dll
若是ext裏面有php_com_dotnet擴展,再增長一行
extension=php_com_dotnet.dll

8。查找date.timezone改成:date.timezone = PRC

 

三、註冊 PHP 到 FastCGI

打開C:\WINDOWS\system32\inetsrv\fcgiext.ini文件 在文件最後加上下面的語句:
[Types](這個是文件原來就有的,在[Types]後面加上下面的語句就能夠,要所有哦否則會報錯的。)
php=PHP
[PHP]
ExePath=D:\PHP\PHP\php-cgi.exe
InstanceMaxRequests=10000
ActivityTimeout=600
RequestTimeout=600
EnvironmentVars=PHP_FCGI_MAX_REQUESTS:10000,PHPRC:D:\PHP\PHP

「php」表示擴展名,「PHP」是配置節名稱,以「[PHP]」定義。

 

四、配置網站
右鍵網站 => 屬性 => 主目錄 => 配置 => 添加,
增長擴展名:php
可執行文件路徑:C:\WINDOWS\system32\inetsrv\fcgiext.dll
限制爲:GET,HEAD,POST

 

五、配置PHP後,運行phpinfo.php程序,出現以下的錯誤提示。

Error Details:
Error Number: 5 (0x80070005).
Error Description: 拒絕訪問。
HTTP Error 500 - Server Error. Internet Information Services (IIS)
緣由是要繼續爲php安裝目錄增長「Network Server」帳戶,並賦其讀取運行權限

 

FastCGI Error  The FastCGI Handler was unable to process the request.
Error Details: ?The FastCGI process exited unexpectedly  ?
Error Number: -2147467259 (0x80004005). ?
Error Description: δ????????
HTTP Error 500 - Server Error. Internet Information Services (IIS)
可能緣由是php.ini裏面要設置開啓:fastcgi.impersonate = 1

相關文章
相關標籤/搜索