Win 10 + IIS + PHP v7.1.7 + SQL Server 2008 R2如何让SQL Server连接正常工作?

问题描述 投票:1回答:1

我无法从在IIS下运行的PHP v7.1.7网站连接到SQL Server 2008 R2。

基本的PHP页面显示正常 - 但与sql server无关。所以基本的IIS站点和PHP使用都可以。

我已下载SQL Server驱动程序驱动程序并在php.ini文件中配置它们

我知道php 7.1驱动程序与其他php版本不同。

扩展目录(ext)添加了以下DLL:php_pdo_sqlsrv_71_nts.dll php_sqlsrv_71_nts.dll

"C:\Program Files\PHP\v7.1\php.ini" has following extensions added:

[ExtensionList]
extension=php_sqlsrv_7_nts.dll  
extension=php_pdo_sqlsrv_7_nts.dll 

IIS中的PHP管理器显示启用了这些扩展。

在调试时我注意到在错误文件PHP71x64_errors.log中加载这些驱动程序存在一个基本问题

即[13-Mar-2018 00:51:27 UTC] PHP警告:PHP启动:无法加载动态库'C:\ Program Files \ PHP \ v7.1 \ ext \ php_sqlsrv_7_nts.dll' - 指定的模块无法被发现。在第0行的未知版本[13-Mar-2018 00:51:27 UTC] PHP警告:PHP启动:无法加载动态库'C:\ Program Files \ PHP \ v7.1 \ ext \ php_pdo_sqlsrv_7_nts.dll' - 找不到指定的模块。在第0行的未知中

这些文件存在于这些位置,我授予每个人完全访问权限 - 包括IUSR是用于网站的iis应用程序池的默认用户。

现在聊天网站充满了这个问题 - 似乎没有人有明确的答案。大多数博客指向另一组sql服务器驱动程序尝试不起作用。

我的问题是:

1)在win 10上,是否应该将IIS安全(ts)或非线程安全(nts)版本的SQL Server驱动程序驱动程序与IIS一起使用? 2)我假设win 10是64位 - 应该使用64位版本的驱动程序而不是x86 - 有人可以确认吗? 3)任何人都可以指向一个权威的SQL Server 2008 R2驱动程序下载,保证与我的win 10和IIS v10.0.16299.15安装一起使用吗?

注意:我已经下载了wp-db-abstraction,必须使用SQL Server的PHP插件并安装到mu-plugins目录中。

c# php sql-server windows iis
1个回答
1
投票

问题是ODBC驱动程序php_odbc.dll扩展被禁用,如在网站上的PHP管理器中查看。启用它,一切正常。

注意:我实际上想使用SQL Server而不是MySQL for wordpress但我看到我必须使用projectnami wordpress下载。 (projectnami.org)

© www.soinside.com 2019 - 2024. All rights reserved.