下载鸥 > 网站下载 > 开发教程 > 帝国CMS

帝国cms报错、远程保存图片无效的原因与解决方案

432 2022-09-26 03:55:34

收藏
帝国cms远程保存图片是一个非常重要的功能,但一些站长在使用中可能会发现这个功能突然无效了,这是什么原因,要如何处理呢?
 

帝国cms远程保存图片无效的原因

图片格式和大小设置问题

如果帝国cms上传文件没有添加png上传模式,而图片又刚好是png,则上传就会出问题。解决方案也很简单,到系统设置-系统参数设置-文件设置-后台上传文件扩展名里添加png即可,注意分隔符也要。
 

图片是https的

帝国目前暂不支持远程保存https图片,如果需要,则要进行以下调整。

打开文件
/e/class/connect.php

1、在connect.php文件最上面,添加以下函数
function getHTTPS($url) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_HEADER, false);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_REFERER, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
}


2、搜索function ReadFiletext,找到以下函数:
function ReadFiletext($filepath){
    $filepath=trim($filepath);
    $htmlfp=@fopen($filepath,"r");
    //远程
    if(strstr($filepath,"://"))
    {
    while($data=@fread($htmlfp,500000))
    {
    $string.=$data;
    }
    }
    //本地
    else
    {
    $string=@fread($htmlfp,@filesize($filepath));
    }
    @fclose($htmlfp);
    return $string;
}

替换成:
function ReadFiletext($filepath){
    $filepath=trim($filepath);
    $htmlfp=@fopen($filepath,"r");
    //远程
    if(strstr($filepath,"https://")){
    return getHTTPS($filepath);
    }
    if(strstr($filepath,"://"))
    {
    while($data=@fread($htmlfp,500000))
    {
    $string.=$data;
    }
    }
    //本地
    else
    {
    $string=@fread($htmlfp,@filesize($filepath));
    }
    @fclose($htmlfp);
    return $string;
}

 

其他可能的原因

服务器配置问题

需要在php.in中把allow_url_fopen设置为on
 

入库超时导致502错误

一般情况下不会出现这个问题,如果出现了,可以尝试将php等待时间改长一点,而后重启php服务。
 

被复制的源站不支持跨域、被引用

如果被复制的源站不支持图片被站外引用,也可能导致图片无法被存储到本地。如果排查确认后是这个原因,则只能更换源站进行信息复制。

通过以上原因的排查与处理,基本可以解决远程保存图片失败的问题。

本文地址:https://xzo.com.cn/develop/empire/1111.html

有帮助,很赞!

信息来源:下载鸥
导出教程 下载word版教程
发表评论 共有条评论
关于帝国CMS


帝国cms是一款功能极为强大的cms程序,性能强悍、安全性高,可轻松支持10万数据,高级开发人员可制作出能容纳千万数据量的网站,是国内最出色的开源cms程序之一,推荐企业用户使用

当前最新版本为7.5,8.0版本即将上线,新版本的核心优化点在于多终端的适配。

推荐帝国CMS开发教程
帝国CMS使用JS正则验证手机邮箱出错怎么办?
帝国CMS使用JS正则验证手机邮箱出错怎么办?

最近有客户向鸥哥求助说使用JS正则验证注册手机邮箱出错了,但本地测试是完全...

11 1271
帝国cms怎样在新增信息时自动刷新自定义页面(sitemap.xml等)?
帝国cms怎样在新增信息时自动刷新自定义页面(sitemap.xml等)?

很多帝国CMS网站使用自定义页面制作sitemap或是其他一些重要的页面,如果每次...

3 557
帝国CMS文章怎样插入短视频?
帝国CMS文章怎样插入短视频?

在这个短视频横行的年代,我们都知道一个短视频比文章比图片都要更加具有吸引...

1 576
帝国cms多站点跨库调用
帝国cms多站点跨库调用

一台服务器如果存在多个站点,则这些站点的数据可以互相调用。通过互相调用,我...

0 491
帝国cms网站怎样用宝塔自动备份?
帝国cms网站怎样用宝塔自动备份?

帝国cms开发的网站数据要经常备份,防范不小心误删除了数据或文件以及服务器...

0 626
织梦、帝国cms、Wordpress的区别/哪个更好?
织梦、帝国cms、Wordpress的区别/哪个更好?

织梦、帝国以及wordpress,国内建站领域占据最大份额的就是这3家公司了。但,他...

0 610
填坑笔记:记录一次帝国cms栏目生成刷新无效的bug
填坑笔记:记录一次帝国cms栏目生成刷新无效的bug

帝国cms刷新栏目页后会自动生成全部栏目列表,但几天在处理客户站点时发现出...

1 496
栏目目录搭建的帝国cms网站怎样写伪静态规则?
栏目目录搭建的帝国cms网站怎样写伪静态规则?

如果用栏目搭建帝国cms站点,伪静态规则该怎么写呢?如果直接作用于根目录,可能...

1 617
推荐插件
帝国cms智能自动审核按星期几审核指定栏目带推送插件
帝国cms智能自动审核按星期几审核指定栏目带推送插件

采集站的必备资源是自动审核,要做到日收录也离不开定时发布。而本插件的自动...

0 1379
帝国CMS内网用户静态站点文章访客统计插件
帝国CMS内网用户静态站点文章访客统计插件

本插件适用于内网用户,可查看单篇文章访问者ip地址。如果添加访问者ip组,可查...

0 634
帝国cms自动生成文章新闻目录插件下载
帝国cms自动生成文章新闻目录插件下载

用户体验是我们的需求,百度蜘蛛的认可更是我们的需求。毕竟,没有收录排名,何来...

0 1226
帝国cms联想词搜索高级搜索插件下载
帝国cms联想词搜索高级搜索插件下载

帝国CMS自带的搜索功能虽然强大,但也有很强的局限性 -- 必须关键词完全匹配...

0 856
帝国cms网站会员登录与退出历史记录日志插件
帝国cms网站会员登录与退出历史记录日志插件

帝国cms默认只有上次登录时间与ip,没有一个记录清单,所以今天,我们分享这个帝...

0 477
帝国cms百度AI图像清晰度增强api接口对接插件
帝国cms百度AI图像清晰度增强api接口对接插件

通过本插件,可以实现帝国cms网站对接百度云api实现图像清晰度增强的功能。经...

0 588
帝国cms百度AI图像去雾api接口对接插件
帝国cms百度AI图像去雾api接口对接插件

通过本插件,可以实现帝国cms网站对接百度云api实现图像去雾的功能。经过实际...

0 517
帝国cms纳米数据接口(足球比赛中最新数据)
帝国cms纳米数据接口(足球比赛中最新数据)

帝国cms 对接纳米数据(www.nami.com)接口,本接口主要接收、整理足球比赛实时数...

0 531
客服QQ:341553759
扫码咨询 常见问题 >
官方交流群:90432500
点击加入