4

如果这听起来像是破纪录,我深表歉意,但我已经在互联网上搜索了好几天,并且交叉引用了至少三个“如何使用 IIS 6 安装 PHP 5”指南,但没有任何运气。我正在尝试在 Windows Server 2003 R2 上使用 IIS 6 配置 PHP 5.4,以及用于连接 SQL Server 的 SQLSRV(SQL Server Native Client)。

这是我到目前为止所做的:

  1. 将php-5.4.4-nts-Win32-VC9-x86.zip解压到 C:\PHP
  2. 安装 FastCGI fcgisetup_1.5_rtw_x86.msi
  3. 下载 Microsoft Drivers for PHP for SQL Server 并将php_sqlsrv_54_nts.dllphp_pdo_sqlsrv_54_nts.dll提取到 C:\PHP\ext
  4. 修改 PHP.ini 并进行以下更改:

    error_log=C:\Windows\temp\php_errors.log
    upload_tmp_dir=C:\Windows\temp session.save_path=C:\Windows\temp
    cgi.force_redirect=0 cgi.fix_pathinfo=1 fastcgi.impersonate=1
    fastcgi.logging=0 max_execution_time=300 date.timezone=欧洲/都柏林 extension_dir="C:\PHP\ext\"

    扩展=php_mysql.dll 扩展=php_mysqli.dll 扩展=php_mbstring.dll 扩展=php_gd2.dll 扩展=php_gettext.dll 扩展=php_curl.dll 扩展=php_exif.dll 扩展=php_xmlrpc.dll 扩展=php_openssl.dll 扩展=php_soap.dll扩展=php_pdo_mysql.dll 扩展=php_pdo_sqlite.dll 扩展=php_imap.dll 扩展=php_tidy.dll 扩展=php_pdo_sqlsrv_54_nts.dll 扩展=php_sqlsrv_54_nts.dll

  5. 已安装Microsoft SQL Server 2005 Native Client

如果我注释掉最后两个扩展,我可以毫无问题地查看phpinfo()。但是,一旦它们被引入并且应用程序池被回收,它就会导致页面挂起,或者 phpinfo() 将显示但 SQLSRV 不存在。

有什么我想念的吗?谢谢,瓦卢克

4

1 回答 1

2

我相信这个问题与我为有问题的服务器使用错误版本的软件有关。例如:

  1. 我更改为 PHP 5.3 (5.3.14) VC9 x86 Non Thread Safe
  2. 我卸载了 Microsoft SQL Server 2005 Native Client 并安装了 Microsoft SQL Server 2008 Native Client

我现在在 PHP 中运行 SQLSRV!

于 2012-06-29T08:49:21.370 回答