SQLSRV覆盖IIS 7 / PHP 5.4中的网站输出

时间:2013-09-11 15:18:37

标签: php iis sqlsrv

我使用 PHP 5.4 进行了简单的 IIS 7 设置。在我需要添加 MS SQL Server 支持之前,一切都运行良好。我下载了通过this link提供的SQLSRV包,将相应的DLL解压缩到我的PHP ext目录,并在php.ini中添加了扩展条目/配置,如下所示:

; MS SQL Server

extension=php_sqlsrv.dll
;extension=php_pdo_sqlsrv.dll

[sqlsrv]
sqlsrv.LogSubsystems=-1
sqlsrv.LogSeverity=-1
sqlsrv.WarningsReturnAsErrors=0

...对extension_dir设置进​​行了额外更改:

extension_dir = "ext"

...,然后重新启动我的服务器。现在,当我运行任何请求时,我得到:

PHP_RINIT for php_sqlsrv: entering
sqlsrv.WarningsReturnAsErrors = Off
sqlsrv.LogSeverity = -1
sqlsrv.LogSubsystems = -1
sqlsrv.ClientBufferMaxKBSize = 10240
PHP_RSHUTDOWN for php_sqlsrv: entering

有时,第一行缺失,但通常是同一个问题。没有页面生成正确的文本/ HTML了!发生了什么事?感谢。

1 个答案:

答案 0 :(得分:0)

在概率平衡上,我想你正在使用错误的sqlsrv dll。首先要做的事情是:您是否从here下载了SQLSRV?

我假设你想要PDO版本(我使用它;它运行得很好!)。从文件名,我不知道你有什么,但根据你的情况,你应该使用php_pdo_sqlsrv_54_nts.dll。当你使用IIS时,你将拥有一个NTS版本的PHP,它应该与非线程安全扩展一起使用。

尝试替换您正在使用的dll,然后在IIS中重新加载应用程序池。 phpinfo()应将sqlsrv显示为可用的PDO驱动程序。让我知道你是怎么过的...... :)