魔术库不能在wamp服务器上运行

时间:2014-12-23 07:29:13

标签: php web

您好我正在使用魔法库来更改图像的分辨率。但是当我运行Wamp时,我得到了以下错误。 enter image description here  enter image description here

我也在分享我所关注网站的链接。 - > http://www.imagemagick.org/script/binary-releases.php#windows - > http://www.zoharbabin.com/5-steps-to-get-imagemagick-on-xampp-1-7-3/

1 个答案:

答案 0 :(得分:1)

这些是关于如何在Windows环境中使用PHP运行ImageMagick的分步说明。 Apache不为Windows提供二进制文件,并依赖于多个来源:

  • XAMPP
  • WampServer
  • Apache Lounge
  • Bitnami
  • Apache Haus

建议下载XAMPP或WampServer发行版,因为它们是包含Apache HTTP服务器的完整软件包,PHP和MySql已知并经过测试可以协同工作。

让ImageMagick工作对我来说并不容易。经过两天的反复试验才能实现这一目标。希望这可以帮助您更快地启动和运行。我有以下内容:

  • Windows 7 Home Edition 64位
  • XAMPP 5.6.3
  • Apache HTTP 2.4.10(Win32),VC 11
  • PHP 5.6.3 x86 VC 11,线程安全

因此,使用VC 11和线程安全编译的32位Web框架全部在64位Windows 7上运行。您必须选择32位ImageMagick DLL发行版以及32位VC11线程安全DLL包装器匹配。

以下说明与WampServer同样适用,因为不依赖于Windows Web框架。

这里需要了解的重要一点是,您必须了解您的Web服务器环境以及安装和构建的组件。您必须将位数,Visual C运行时和线程安全配置匹配在一起。

步骤1:将imageMagick安装到C:\ ImageMagick

转到http://www.imagemagick.org/script/binary-releases.php#windows并下载最新版本。使用32位DLL版本(ImageMagick-6.9.0.0-Q16-x86-dll.exe)

将其安装到C:\ ImageMagick目录

步骤2:从Windows PECL存储库获取PHP包装器

转到http://pecl.php.net/package/imagick

获取最新的稳定版本3.1.2。您需要32位VC 11线程安全版本 php_imagick-3.1.2-5.6-ts-vc11-x86.zip

步骤3:创建分发目录

创建/ php / ext / imagemagick目录

将ZIP复制到其中并解压缩

步骤4:制作DLL的备份副本

制作C:\ ImageMagick \ Backup目录

将C:\ ImageMagick目录中的DLL复制到C:\ ImageMagick \ Backup目录

步骤5:覆盖DLL

这是最重要的一步,如果你不这样做,将导致PHP包装器无法正确加载:

获取\ php \ ext \ ImageMagick中的所有DLL文件并覆盖C:\ ImageMagick中的那些

如果在DOS命令行上执行SET,您将看到ImageMagick安装程序已创建进入系统变量环境路径的条目(即到C:\ ImageMagick)。支持DLL将从那里获取,它们将是Pecl Windows存储库DLL,而不是分发。

步骤#6:在PHP.INI中设置模块扩展

首先,将php扩展包装器php_imagick.dll复制到/ php / ext目录中。然后修改PHP.INI来执行此操作:

延长= php_imagick.dll

第7步:重新启动Apache

重启Apache

转到phpinfo,看看imagick是作为模块安装的。

您可以在这里了解有关您环境的更多信息。 注意phpinfo中的东西,如:

  • 编译器:MSVC11(Visual C ++ 2012)
  • 架构:x86(32位;而不是x64,即64位)
  • 线程安全:启用(TS)
  • Apache环境配置(PATH应包含C:\ ImageMagick)

更多血腥的细节:Installing ImageMagick with PHP and Windows