[英]How to fix: PHP Startup: Unable to load dynamic library 'php_pdo_sqlsrv_80_nts_x64'?
[英]PHP Startup: Unable to load dynamic library 'C:\\xampp\\php\\ext\\php_sqlsrv_7_nts.dll'
我想通过XAMPP在本地计算机上连接SQL Server。 为此,我使用以下规格:
我已经从这里和这里安装了驱动程序。 我还链接了x86(32位)版本中的非线程安全驱动程序php_sqlsrv_7_nts_x86.dll
。 现在,当我通过XAMPP控制面板启动apache服务器时,它在apache的error_log
给我一个错误。
PHP警告:PHP启动:无法加载动态库'C:\\ xampp \\ php \\ ext \\ php_sqlsrv_7_nts.dll'-Das angegebene Modul wurde nicht gefunden。\\ r \\ n在“未知”行0
这是德语错误消息,表示未找到该模块。
这是我的php.ini文件,将被加载:
extension_dir="C:\xampp\php\ext"
...
extension=php_pdo_sqlsrv_7_nts.dll
extension=php_sqlsrv_7_nts.dll
extension=php_bz2.dll
extension=php_curl.dll
extension=php_fileinfo.dll
;extension=php_ftp.dll
extension=php_gd2.dll
extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_intl.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
extension=php_mbstring.dll
extension=php_exif.dll ; Must be after mbstring as it depends on it
extension=php_mysqli.dll
;extension=php_oci8_12c.dll ; Use with Oracle Database 12c Instant Client
;extension=php_openssl.dll
;extension=php_pdo_firebird.dll
extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll
;extension=php_shmop.dll
因此,dll文件位于默认ext
文件夹下。 怎么了?
我认为一定有问题,apache找不到dll文件。 但是在资源管理器中,dll文件的名称与我在php.ini中编写的名称相同。
如果在启动Apache时收到PHP启动错误,则意味着您正在将PHP作为Apache模块运行。 在这种情况下,您应该使用Windows的下载页面中所述的线程安全版本的PHP:
使用Apache,您必须使用PHP的线程安全(TS)版本。
TS是指具有多线程功能的构建。 NTS仅指单线程构建。 TS二进制文件的用例涉及与多线程SAPI和作为模块加载到Web服务器的PHP的交互。 对于NTS二进制文件,广泛的用例是通过FastCGI协议与Web服务器进行交互,而不使用多线程(例如CLI)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.