码迷,mamicode.com
首页 > 其他好文 > 详细

织梦dedecms 无法下载远程图片 fsockopen函数被禁用的解决方法

时间:2014-11-29 13:08:06      阅读:244      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   color   os   使用   sp   文件   

在linux服务器上fsockopen()函数被无情的禁用了(这其实是出于安全考虑,可以理解),下载远程图片的功能就没有办法使用了。找了一些资料之后,找到了解决方法,就是用stream_socket_client()函数替换掉fsockopen()函数。具体的方法如下:

打开/include/中的dedehttpdown.class.php文件,找到如下代码:

 

$this->m_fp = @fsockopen($this->m_host, $this->m_port, $errno, $errstr,10);

 

替换成:

 

$this->m_fp = stream_socket_client("".$this->m_host.":".$this->m_port, $errno, $errstr, 10);

 

保存,然后上传,就可以了。

 

图集的采集也需要改一下,修改位置为:

打开/include/中的dedecollection.func.php文件,找到如下代码:

$m_fp = fsockopen($ghost, 80, $errno, $errstr,10);

 

改成如下:

$m_fp = stream_socket_client("".$ghost.":80", $errno, $errstr, 10);

 

查找:

$m_fp = fsockopen($ghost, 80, $errno, $errstr,10) or die($ghost.‘<br />‘);

 

改为如下代码:

$m_fp = stream_socket_client("".$ghost.":80", $errno, $errstr, 10) or die($ghost.‘<br />‘);

 

即可。

织梦dedecms 无法下载远程图片 fsockopen函数被禁用的解决方法

标签:style   blog   http   io   color   os   使用   sp   文件   

原文地址:http://www.cnblogs.com/cnteam/p/4130548.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!