【问题标题】:Why is PHP GD Library enabled from CLI but not when being accessed through Apache?为什么从 CLI 启用 PHP GD 库,但通过 Apache 访问时却没有?
【发布时间】:2021-04-18 08:35:18
【问题描述】:

我使用的是 EC2 Amazon AMI 2 和 PHP7.2,Apache 2.2 盒子。

如果我从 CLI 执行文件,则会启用 GD 库:

# php gd.php

但它在网络上失败了:

Fatal error: Uncaught Error: Call to undefined function imagecreate()...

另外,来自 CLI 的 PHP 信息:

# php -i|grep gd
/etc/php.d/20-gd.ini,
gd
gd.jpeg_ignore_warning => 1 => 1

以及来自 Web 的 PHP 信息:

只匹配“gd”。

【问题讨论】:

  • PHP CLI 和 PHP 的 Apache mod 通常具有不同的 php.ini 文件,并且可以启用不同的扩展。
  • 通常有 2 个不同的 php.ini 文件。一个用于 CLI,一个用于 Web 服务器下的 PHP。查看Loaded Configuration FilephpInfo() 输出,这是Web 服务器下PHP 正在使用的php.ini。然后与php --ini输出比较
  • 注意到@MagnusEriksson。检查,相同的 php.ini 文件正在被使用。
  • 注意到@RiggsFolly。检查,相同的 php.ini 文件正在被使用。
  • 启用扩展后是否重启了网络服务器?

标签: php amazon-ec2 gd


【解决方案1】:

首先打开你的 php.ini 并取消注释 extension=gd 然后重启你的服务器。

一切都会好起来的。

这适用于在 Windows 上运行 php 8 的 xampp

【讨论】:

    猜你喜欢
    • 2017-04-24
    • 2018-04-16
    • 2021-12-24
    • 1970-01-01
    • 2021-10-09
    • 1970-01-01
    • 1970-01-01
    • 2021-12-11
    相关资源
    最近更新 更多