zoukankan      html  css  js  c++  java
  • 织梦dedecms 无法下载远程图片 fsockopen函数被禁用的解决方法

    在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 />');

    即可。

  • 相关阅读:
    【CF580D】Kefa and Dishes
    【poj3311】Hie with the Pie
    校外实习-7.7
    校外实习-7.6
    校外实习-7.5
    校外实习-7.4
    作业九-课程总结(补充)
    作业九-课程总结
    作业四——结对编程四则运算
    作业三
  • 原文地址:https://www.cnblogs.com/cnteam/p/4130548.html
Copyright © 2011-2022 走看看