Imagick 在 xampp 停止工作

Imagick stopped working in xampp

使用 this link 在 Xampp 中安装了 Imagick。本来可以正常使用,但是突然停止了。

我唯一做的事情是尝试在 zend 3 中配置 gmail stmp 设置。虽然我不确定,但在那之后它停止工作了。

这是错误

Fatal error: Uncaught ImagickException: Imagick::__construct(): SSL operation failed with code 1. OpenSSL Error messages: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed in C:\xampp\htdocs\restau\restau\public\image.php:55 Stack trace: #0 C:\xampp\htdocs\restau\restau\public\image.php(55): Imagick->__construct('https://storage...') #1 {main} Next ImagickException: Failed to read the file in C:\xampp\htdocs\restau\restau\public\image.php:55 Stack trace: #0 C:\xampp\htdocs\restau\restau\public\image.php(55): Imagick->__construct('https://storage...') #1 {main} thrown in C:\xampp\htdocs\restau\restau\public\image.php on line 55

编辑 1

关注 this link 并更改

curl.cainfo ="C:\xampp\perl\vendor\lib\Mozilla\CA\cacert.pem"

openssl.cafile="C:\xampp\perl\vendor\lib\Mozilla\CA\cacert.pem"

这是我现在遇到的错误

Fatal error: Uncaught ImagickException: Failed to read the file in C:\xampp\htdocs\restau\restau\public\image.php:55 Stack trace: #0 C:\xampp\htdocs\restau\restau\public\image.php(55): Imagick->__construct('https://storage...') #1 {main} thrown in C:\xampp\htdocs\restau\restau\public\image.php on line 55

下面是没有加载图像的代码,直到几天前它都可以正常工作。

<img src="/image.php?filename=https://storage.googleapis.com/xxxxxx/uploads_56ea606ea4685.jpg&amp;width=380&amp;height=255" alt="">

提前致谢!!

我就是这样解决这个问题的。

我替换了这部分代码

if(filter_var($imagePath, FILTER_VALIDATE_URL)) {
    $imagick = new Imagick($imagePath);
} else {
    $imagick = new Imagick(getcwd().$imagePath);
}

有了这个

if(filter_var($imagePath, FILTER_VALIDATE_URL)) {
  $tempFile = 'temp/file-'.uniqid().'.jpg';
  copy($imagePath, $tempFile);
  $imagick = new Imagick(getcwd().'/'.$tempFile);
  unlink(getcwd().'/'.$tempFile);
} else {
  $imagick = new Imagick(getcwd().$imagePath);
}