我在我的服务器上安装了一个GD库,“已启用”,但在php.info中的configuration命令下,它说
"--without-gd"
有没有办法通过根启用它,或者我必须重新编译?
编辑:这是它下面显示“GD”
GD支持启用 GD版本捆绑(2.0.34兼容) 启用FreeType支持 FreeType与freetype的联系 FreeType版本2.2.1 GIF阅读支持启用 GIF创build支持启用 JPG支持启用 启用了PNG支持 启用了WBMP支持 已启用XBM支持
这是我的testing脚本:
//开始php 标题('content-type:image / jpg'); $ watermark = imagecreatefrompng('ninja.jpg'); $ watermark_width = imagesx($ watermark); $ watermark_height = imagesy($ watermark); $ image = imagecreatetruecolor($ watermark_width,$ watermark_height); $ image = imagecreatefromjpeg($ _ GET ['src']); $ size = getimagesize($ _ GET ['src']); $ dest_x = $ size [0] - $ watermark_width - 5; $ dest_y = $ size [1] - $ watermark_height - 5; imagecopymerge($ image,$ watermark,$ dest_x,$ dest_y,0,0,$ watermark_width,$ watermark_height,100); imagejpeg($图) imagedestroy($图像); imagedestroy($水印); //结束php
configuration命令下显示的命令行反映了二进制文件的选项,而不是当前可用的模块。 看下面的主要configuration标题,看看是否加载模块。 如果没有,然后安装php-gd
软件包并重新启动/重新加载httpd。
尝试打开error_reporting(E_ALL); 并将您的浏览器指向图片url。 如果您的浏览器仅显示破损的pict消息,请注释types标题以查看可能隐藏的任何错误消息。 并修复提到的缺less分号的本。
编辑:消毒$ _GET ['src']你可能会在那里打开一个大的安全漏洞。
imagecreatefrompng('ninja.jpg')
是一个错字? (即加载一个JPEG到imagecreatefrompng
哪个需要一个PNG)。
当我加载一个JPEG到imagecreatefrompng
,它只显示像你描述的图像的URL。 当我加载一个PNG水印图像时,它工作得很好。
注意:我在Windows上,看起来像在Linux上。 你的里程可能会有所不同,但我不太想。
我的php副本带有--without-gd
根据phpinfo()
– 我刚刚取消注释;extension=php_gd2.dll
在php.ini和GD工作正常。
Ubuntu 10,Zend服务器