我为我的一个客户构建了一个pdf生成器脚本,一切正常。然后,他决定要我从PDF创建缩略图图像以显示在另一页上,所以我遇到了PHMagick,这似乎可以解决问题。
以下代码在我的构建服务器上运行(iPage - 我认为它是debian?),但是现在我已将它移到他的VPS,它已不再有效。 FPDF生成pdf没有问题,因此它不是权限问题。
代码:
require("phmagick/phmagick.php");
$pdf->Output("pdf.pdf");
$p = new phmagick('','pdf.png');
$p->debug = true;
$p->resize(800);
$p->acquireFrame("pdf.pdf");
此代码返回以下错误:
执行“convert”时出错pdf.pdf“[0]”pdf.png“”
返回码:127
命令输出:“sh:convert:command not found”
自从我从原始服务器移动代码后,我没有更改任何代码,而我只是复制了整个网站,所以为什么PHMagick现在不能正常工作?如何让它识别插件文件夹中的convert.php?
只是一个注释:我只使用PHMagick,而不是整个ImageMagick。
答案 0 :(得分:2)
PHMagic似乎在后台使用命令行convert
命令。
很可能该命令根本没有安装在服务器上。
答案 1 :(得分:2)
PHMagic在后台使用命令行convert
,composite
等...命令。
只有在服务器中安装了ImageMagick时,这些命令才可用。
在您之前的服务器中,必须安装ImageMagick。
Ipage 有时不会在 VPS 服务器上预先安装ImageMagick。而且您可能无法自行安装(通过终端登录使用... yum install ImageMagick
)因为您将提示root密码。
要确保在您的服务器中安装ImageMagick二进制文件,请以convert
命令为例
在ssh终端中键入此命令...
whereis convert
如果未显示转换命令的路径,则表示您需要安装ImageMagick。
您必须打开支持票并要求他们为您安装
答案 2 :(得分:1)
正如arkascha所说,你需要安装imagemagick。尝试yum install imagemagick
,因为您正在运行CentOS。
编辑:可能是一个不同的大写字母:ImageMagick