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

    即可。

  • 相关阅读:
    日期格式
    v-model修饰符
    从0到1构建全栈知识体系
    Element组件,v-for循环,表单验证方法
    上传文件转换为base64图片
    gulp4进阶
    gulp4快速入门
    TS-接口
    webpack4.0高级
    webpack4.0基础
  • 原文地址:https://www.cnblogs.com/cnteam/p/4130548.html
Copyright © 2011-2022 走看看