在Centos 7上启用PHP扩展 [英] Enable Extensions for PHP on Centos 7
问题描述
我想使用Ngnix运行Drupal,但是一旦安装了ngnix drupal,我就会看到:
I want to run Drupal using Ngnix, but once I've installed ngnix, drupal, I see this:
Drupal requires you to enable the PHP extensions in the following list
(see the system requirements page for more information):
dom
gd
pdo
我有显示未加载这些模块的php脚本:
I have php script that shows these modules aren't loaded:
<?php
$dom = extension_loaded( 'dom');
$gd = extension_loaded( 'gd');
$pdo = extension_loaded( 'pdo');
echo '<p>Hello Bogus Drupal, from Tommy the Geek</p>';
echo "GD: ", extension_loaded('gd') ? 'OK' : 'MISSING', '<br>';
echo "dom: ", extension_loaded('dom') ? 'OK' : 'MISSING', '<br>';
echo "PDO: ", extension_loaded('pdo') ? 'OK' : 'MISSING', '<br>';
echo "zip: ", extension_loaded('zip') ? 'OK' : 'MISSING', '<br>';
?>
输出看起来像这样:
GD: MISSING
dom: MISSING
PDO: MISSING
zip: OK
即使"php -m"显示模块可用于命令行界面:
even though "php -m" shows the modules are available to the command line interface:
# php -m | grep [dgP][oDd]
dom
gd
PDO
pdo_sqlite
wddx
.如何使它们可用于Web服务器?
. How can I make them available to the web server?
推荐答案
假定您正在Google上使用虚拟机,并运行Centos 7
Assuming you are using a Virtual Machine on Google, Running Centos 7
-
查找php扩展名
Find the php extensions like for instance
#找到/-name wddx.so
# find / -name wddx.so
/usr/lib64/php/modules/wddx.so
/usr/lib64/php/modules/wddx.so
找到php.ini
#找到/-name php.ini
# find / -name php.ini
/etc/php.ini
/etc/php.ini
编辑php.ini并更改extension_dir指令
Edit php.ini and change extension_dir directive
;可加载的扩展(模块)所在的目录.
extension_dir ="/usr/lib64/php/modules/"
; Directory in which the loadable extensions (modules) reside.
extension_dir = "/usr/lib64/php/modules/"
这篇关于在Centos 7上启用PHP扩展的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!