在 Windows 2003(32 位)环境中运行:
- Apache HTTPD 2.2
- PHP 5.3.27 线程安全
我已经安装了 32 位的 Microsoft SQL Server Native Client,并从驱动程序下载中将 php_sqlsrv_53_ts_vc9.dll 复制到 C:\PHP\ext(并确认它设置为 extension_dir)。
我还尝试了驱动程序的 PDO 版本和 VC6 版本(虽然已经确认它是 VC9)。
重新启动 HTTPD 不会报告任何错误并且可以正常提供页面;访问包含 phpinfo() 的页面包括以下配置部分:
cscript /nologo configure.js "--enable-snapshot-build" "--disable-isapi" "--enable-debug-pack" "--without-mssql" "--without-pdo-mssql" "--without-pi3web" "--with-pdo-oci=C:\php-sdk\oracle\instantclient10\sdk,shared" "--with-oci8=C:\php-sdk\oracle\instantclient10\sdk,shared" "--with-oci8-11g=C:\php-sdk\oracle\instantclient11\sdk,shared" "--enable-object-out-dir=../obj/" "--enable-com-dotnet=shared" "--with-mcrypt=static" "--disable-static-analyze"
在页面中搜索 SQLSERV 或 MSSQL 不会返回任何结果,确认它不是在加载 MSSQL 扩展时开始的。
作为一项测试,我让 PHP 使用以下方法连接到 SQL 服务器:
new COM('ADODB.Connection')
这样就可以访问SQL Server实例了。
有什么想法可以尝试,或者需要任何额外的信息吗?