使用CentOS 8在PHP7.4中安装pdo_sqlsrv驱动程序

使用CentOS 8在PHP7.4中安装pdo_sqlsrv驱动程序,php,sql-server,pdo,centos,centos8,Php,Sql Server,Pdo,Centos,Centos8,我已经使用本指南在CentOS 8 VPS中成功安装了PHP7.4和Remi软件包 我的Apache服务器中有一个VirtualHost,它指向我的域并加载该环境所需的php版本 <VirtualHost *:80> ServerName www.example.net ServerAlias example.net DocumentRoot /var/www/example.net/html ErrorLog /var/www/example.net

我已经使用本指南在CentOS 8 VPS中成功安装了PHP7.4和Remi软件包

我的Apache服务器中有一个VirtualHost,它指向我的域并加载该环境所需的php版本

<VirtualHost *:80>
    ServerName www.example.net
    ServerAlias example.net
    DocumentRoot /var/www/example.net/html
    ErrorLog /var/www/example.net/log/error.log
    CustomLog /var/www/example.net/log/requests.log combined
  <IfModule !mod_php7.c>
    <FilesMatch \.(php|phar)$>
        SetHandler "proxy:unix:/var/opt/remi/php74/run/php-fpm/www.sock|fcgi://localhost"
    </FilesMatch>
  </IfModule>
</VirtualHost>
编辑:

我还使用这个命令检查了yum list installed | grep php

我有以下输出。注意来自remi的php pdo

php-json.x86_64                     7.4.12-1.el8.remi                          @remi-modular
php-pdo.x86_64                      7.4.12-1.el8.remi                          @remi-modular
php-sqlsrv.x86_64                   5.8.1-1.el8.remi.7.4                       @remi-modular
php74.x86_64                        1.0-3.el8.remi                             @remi-safe
php74-php-cli.x86_64                7.4.12-1.el8.remi                          @remi-safe
php74-php-common.x86_64             7.4.12-1.el8.remi                          @remi-safe
php74-php-fpm.x86_64                7.4.12-1.el8.remi                          @remi-safe
php74-php-json.x86_64               7.4.12-1.el8.remi                          @remi-safe
php74-runtime.x86_64                1.0-3.el8.remi                             @```
如何使用Remi为PHP7.4安装启用pdo_sqlsrv扩展? php-sqlsrv.x86_64 5.8.1-1.el8.remi.7.4@remi模块化 php74-php-fpm.x86_64 7.4.12-1.el8.remi@remi-safe

您混淆了php-*单一/默认版本和php74-*设计用于多版本安装。阅读存储库

要正确安装,只需按照以下步骤操作

因此,如果您使用php fpm,您需要php sqlsrv,这是一种更简单的方法,因此推荐使用

如果使用php74 php fpm,则需要php74 php sqlsrv

您不必从源代码构建任何内容,也不必修改任何INI文件

如何使用Remi为PHP7.4安装启用pdo_sqlsrv扩展? php-sqlsrv.x86_64 5.8.1-1.el8.remi.7.4@remi模块化 php74-php-fpm.x86_64 7.4.12-1.el8.remi@remi-safe

您混淆了php-*单一/默认版本和php74-*设计用于多版本安装。阅读存储库

要正确安装,只需按照以下步骤操作

因此,如果您使用php fpm,您需要php sqlsrv,这是一种更简单的方法,因此推荐使用

如果使用php74 php fpm,则需要php74 php sqlsrv


您不必从源代码生成任何内容,也不必修改任何INI文件。

您在第3步就有了它,但请确保您使用的是正确的.INI文件。另外,如果您正在使用fpt,您可能需要重新启动php服务,以使更改生效。仔细检查Apache正在使用的PHP文件,我怀疑您会注意到它们丢失了。我已经尝试将extension=pdo_sqlsrv.so添加到正在加载的PHP.ini中,但仍然没有任何更改。请注意我自己和@JulienB。请确认您没有将其添加到正确的。我怀疑您已将其添加到php.ini文件中,而不是Apache正在使用的文件。这是我正在添加的文件,您在步骤3中已经添加了它,但请确保您使用的是正确的.ini文件。另外,如果您正在使用fpt,您可能需要重新启动php服务,以使更改生效。仔细检查Apache正在使用的PHP文件,我怀疑您会注意到它们丢失了。我已经尝试将extension=pdo_sqlsrv.so添加到正在加载的PHP.ini中,但仍然没有任何更改。请注意我自己和@JulienB。请确认您没有将其添加到正确的。我怀疑您已将其添加到php.ini文件中,而不是Apache正在使用的文件。这是我正在添加的文件
php-json.x86_64                     7.4.12-1.el8.remi                          @remi-modular
php-pdo.x86_64                      7.4.12-1.el8.remi                          @remi-modular
php-sqlsrv.x86_64                   5.8.1-1.el8.remi.7.4                       @remi-modular
php74.x86_64                        1.0-3.el8.remi                             @remi-safe
php74-php-cli.x86_64                7.4.12-1.el8.remi                          @remi-safe
php74-php-common.x86_64             7.4.12-1.el8.remi                          @remi-safe
php74-php-fpm.x86_64                7.4.12-1.el8.remi                          @remi-safe
php74-php-json.x86_64               7.4.12-1.el8.remi                          @remi-safe
php74-runtime.x86_64                1.0-3.el8.remi                             @```
dnf remove php74\*
dnf install php-fpm php-cli