[英]Installing pdo_sqlsrv driver in PHP 7.4 using CentOS 8
I have successfully installed php 7.4 with Remi packages in my CentOS 8 VPS (Used this guide https://www.digitalocean.com/community/tutorials/how-to-run-multiple-php-versions-on-one-server-using-apache-and-php-fpm-on-centos-8 )我已经在我的 CentOS 8 VPS 中成功安装了带有 Remi 软件包的 php 7.4(使用本指南https://www.digitalocean.com/community/tutorials/how-to-run-multiple-php-versions-on-one-server-使用-apache-and-php-fpm-on-centos-8 )
I have a VirtualHost in my Apache server, that points to my domain and load the required php version for that environment.我的 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>
How do you enable the pdo_sqlsrv extension to a php 7.4 installation using Remi?如何使用 Remi 为 php 7.4 安装启用 pdo_sqlsrv 扩展?
I've followed this guide: https://learn.microsoft.com/en-us/sql/connect/php/installation-tutorial-linux-mac?view=sql-server-ver15#installing-the-drivers-on-red-hat-7-and-8 but I think something went wrong.我遵循了本指南: https://learn.microsoft.com/en-us/sql/connect/php/installation-tutorial-linux-mac?view=sql-server-ver15#installing-the-drivers-on -red-hat-7-and-8但我认为出了点问题。
If I do <?php echo phpinfo(); ?>
如果我这样做
<?php echo phpinfo(); ?>
<?php echo phpinfo(); ?>
I see that no modules are being loaded https://gyazo.com/d5a30969f06c49e78bf3473a07776492 <?php echo phpinfo(); ?>
我看到没有模块被加载https://gyazo.com/d5a30969f06c49e78bf3473a07776492
Also if I check for the PHP version using php -v
, this is the output:此外,如果我使用
php -v
检查 PHP 版本,则这是 output:
PHP Warning: Module 'sqlsrv' already loaded in Unknown on line 0
PHP Warning: Module 'pdo_sqlsrv' already loaded in Unknown on line 0
PHP 7.4.12 (cli) (built: Oct 27 2020 15:01:52) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
EDIT:编辑:
I have also checked using this command yum list installed | grep php
我还检查过使用此命令
yum list installed | grep php
yum list installed | grep php
and I have the following output. Notice the php-pdo
from remi.我有以下 output。请注意来自 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 @```
How do you enable the pdo_sqlsrv extension to a php 7.4 installation using Remi?
如何使用 Remi 为 php 7.4 安装启用 pdo_sqlsrv 扩展? php-sqlsrv.x86_64 5.8.1-1.el8.remi.7.4 @remi-modular php74-php-fpm.x86_64 7.4.12-1.el8.remi @remi-safe
php-sqlsrv.x86_64 5.8.1-1.el8.remi.7.4 @remi-modular php74-php-fpm.x86_64 7.4.12-1.el8.remi @remi-safe
You are confused betweeen php-* (single/default version) and php74-* (designed for multiple versions installation).您对 php-*(单一/默认版本)和 php74-*(专为多版本安装而设计)感到困惑。 Read the repository FAQ
阅读存储库常见问题解答
For a proper installation, simply follow the Wizard instruction .要正确安装,只需按照向导说明操作即可。
So, if you use php-fpm , you need php-sqlsrv (which is the simpler way, so recommended).所以,如果你使用php-fpm ,你需要php-sqlsrv (这是更简单的方法,所以推荐)。
If you use php74-php-fpm , you need php74-php-sqlsrv .如果您使用php74-php-fpm ,则需要php74-php-sqlsrv 。
dnf remove php74\*
dnf install php-fpm php-cli
You don't have to build anything from source, and don't have to modify any INI file.您不必从源代码构建任何东西,也不必修改任何 INI 文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.