今天继续昨天的wordperss auto post网站自动采集,昨天我们解决了为什么采集文章失败,是由于wordpress的数据表的一个字段问题,post_excerpt不能为空。今天遇见的另外一个问题是,图片采集失败。问题既然出现了,最简单直接的当然是求助互联网了,网上一搜,出现了好几种方案。
- Auto post选项里面点击 “重置”按钮。
- 采集的图片的属性不匹配,例如:<img src=”http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif” real_src =”http://s1.sinaimg.cn/mw690/003Pk6x8gy6EbBPtaj630&690″ WIDTH=”690″ HEIGHT=”457″ ALT=”一针一线密密缝 <wbr>带着爱与感恩的心” TITLE=”一针一线密密缝 <wbr>带着爱与感恩的心” />real_src 为真实图片地址的属性,因此图片地址的属性那里应该设为 real_src ,而auto post的图片采集默认为src,所以我们要去更改,当然也有可能是其它的属性。
- 有人说没有安装GD扩展,但是我明明是安装了的。
正常情况下这几种方案如果都一一测试,应该是可以正确的采集到图片的,但是很可惜的是我都尝试过了依然不能采集到图片。于是我尝试查看日志,但是很不幸的是这次并没有看到任何错误日志,因为错误信息被捕获只是提示“下载远程图片失败, 使用原始图像地址”。自己也尝试去跟踪代码,但是看到那被封装过的代码,最后我放弃了,因为实在是有点麻烦。我不停地在网上搜索,找到的答案都是千篇一律,全是拷贝出来的。但是我始终觉得问题应该是gd扩展的问题。于是乎最后我又把GD重新安装了一次,应该是GD的整体安装。代码如下:
服务器: linux centos
yum install libjpeg-devel freetype-devel libpng-devel -y
进入PHPext的gd目录
cd /usr/local/src/php-5.5.26/ext/gd/
/usr/local/php/bin/phpize
./configure –with-php-config=/usr/local/php/bin/php-config –with-jpeg-dir=/usr/local/jpeg –with-png-dir=/usr/local/png–with-freetype-dir=/usr/local/freetype
make && make install
编辑/etc/php.ini,加入gd.so扩展.
extension = gd.so
重启apache服务,重新采集图片,成功,结果原因是因为我的gd库没有安装jpeg ,只安装了png.
最后希望遇见类似问题的小伙伴能解决这个问题,免得多走很多弯路。