【发布时间】:2019-02-03 19:40:51
【问题描述】:
我正在设置一个 Amazon Linux 环境,并且在安装了一些模块之后:
sudo yum install php-xml
sudo yum install php-gd
例如...并安装 Imagick,然后重新启动 (sudo service httpd restart) 它似乎没有为 PHP-Apache 安装。我在 Amazon Linux 2 中使用官方 PHP7.2,奇怪的是,例如 xml_parser_create() 在 php -a 控制台中工作,但是当我把它放在一个 php 文件中时,它会在转到 php 文件时导致异常, 黑屏。奇怪的是,它甚至没有将函数未定义错误发送到 /var/log/httpd 日志。
phpinfo() 也没有显示 Imagick 或 gd 虽然已安装。
我已经检查了disabled_functions 的 php ini 文件,但没有发现任何其他可能会在默认安装中明显损坏的东西...是否有一种新方法我应该为 Apache php 安装?
【问题讨论】:
-
有一个用于命令行的 php.ini 和一个用于
PHP-Apache的 php.ini 确保它们都添加到两者中 -
密切注意 CLI 和 Apache 使用的实际 INI 文件 - 它位于
phpinfo()输出的第一个表的中间 -
@IVOGELOV 我没有在任何 ini 文件中看到任何 disable_function 指令。这是一个新设置,所以令人惊讶的是他们将其设置为默认不加载新模块。
-
正如我所说 - 通过 CLI 和 Apache 运行一次
phpinfo(),然后检查它们是否使用相同的 INI 文件 - 特别是Loaded Configuration File行(从上到下第 7 个) -
原因也可能在
extension_dir指令中。我在 Windows 上遇到了同样的问题,一旦我用完整路径替换"ext",它就解决了问题
标签: php apache php-7.2 amazon-linux