干预想象力在终端中工作但不在浏览器中工作

时间:2017-03-14 06:38:06

标签: php gd imagick intervention

我完全不明白出了什么问题。我已经按照here

的指导安装了干预措施

然后我创建了以下.php文件并启动了我的localhost Apache服务器并测试了结果并且它有效!

以下是代码:

test.php的

<?php
require 'vendor/autoload.php';
use Intervention\Image\ImageManagerStatic as Image;
Image::configure(array('driver' => 'gd'));
$image = Image::make('ar.jpg');
$path = 'public/images/photoh.png';
$image->save($path);
?>

但是当我在Ubuntu终端中使用php test.php运行相同的文件时,我收到以下错误:

这个PHP安装不支持GD库扩展。

当我检查phpinfo()时,我看到gd在那里列出版本2.1.0

这不是真正的问题,但我仍然想知道什么是错的,我该如何解决呢。

然后是真正的问题。我使用以下命令分别安装 Imagick

sudo apt-get install php-imagick

在我的系统上安装了 Imagick 6.8 (我使用convert -version检查了这个)

然后我在php.ini文件中添加了以下内容:

extension=imagick.so

然后进行测试,我将驱动程序更改为 test.php 中的'imagick',并在终端中使用php执行它并且运行正常。

但我希望它可以在浏览器上工作,例如 GD ,但 IT DID NOT

它显示了 GD 在终端上显示的类似错误:

此PHP安装无法使用ImageMagick模块。

所以似乎安装了 ImageMagick 但缺少某些东西。有什么我可以做的吗?

Ubuntu:16.04 LTS PHP:5.6

1 个答案:

答案 0 :(得分:0)

首先,您的系统上可能存在各种php.ini文件。您可以在终端中键入locate php.ini来查找各种文件。确认您正在编辑网络的预期版本。其次,我会重新启动您的Web服务。如果您正在使用Apache,则可以在终端中键入sudo service apache2 restart以重新启动它。