前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >UEditor上传图片功能无法使用,提示:后端配置项没有正常加载,上传插件不能正常使用!

UEditor上传图片功能无法使用,提示:后端配置项没有正常加载,上传插件不能正常使用!

作者头像
世纪访客
发布2018-08-02 15:52:20
3.5K0
发布2018-08-02 15:52:20
举报
文章被收录于专栏:西枫里博客

事情还得从元旦那回说起。话说2017年最后一天启用CDN内容分发服务后,网站也就更新了几篇文章而已,昨天按计划开更内容,写了一半准备插图的时候,就爆了。硬生生的不让我插入图片啊,俗话说字不如表,表不如图。一张图能解决很多文字才能表达清楚的意思,并且简单直白粗暴。

故障详情,UEditor报配置错误。

点击单图上传按钮,选择需要的图片以后,编辑器中就一直是一个loading的状态,文章中无法插入需要的图片了。尝试使用多图上传功能,点开后就出现了错误信息:后端配置项没有正常加载,上传插件不能正常使用!如图:

初步排查了下错误原因,我看了下本地程序,一起正常,前面是点击单图上传出现loading状态的,这个有两种可能图片上传了,拉取不到,二是图片没有成功上传。FTP看了下服务器上的文件,很显然,图片并没有被上传。

查找出错原因,尝试排除故障。

回想了下,之前发布文章的时候功能一直正常,最近更新系统也都没有牵扯到文章系统的改造,而UEditor是个集成环境,没有做二次开发,只在使用的时候自定义了一些配置,并且配置当时调试正常,最近也没有变更配置。

那么最大的可能就是在我启用CDN之后出现的故障了,原因前面也提到启用CDN以后一直没有更新带图的博文。在没有确定是否是CDN造成的准确判断之下,我尝试断开了CDN,直接解析了域名,待生效后登录后台,发现插图功能恢复,最终验证了猜测。

既然是CDN造成的,无非就是因为回源的问题。之前做过将博客的后台系统全部回源了,而UEditor只出现在后台上,并没有出现在前台。我就在想,也许是因为我把UEditor作为插件使用的,而我在静态资源路径配置方面,和后台视图路径并非一致。接下来我就把UEditor的路径在阿里云CDN里面回源了,刷新后CDN缓存后再次尝试添加图片依然无效(这之前把域名解析切回到了CDN上)。然后又接着将UEditor的配置文件ueditor.config.jsconfig.json等需要加载的做了文件回源。做完这一切之后,后台依然没有鸟我,还是报错。

阅读UEditor源码找到坑之所在。

联想到之前QQ互联的坑,加上编辑器其它功能都完好,唯独上传功能异常,果断判断问题应该出现在参数被过滤的原因上。

通过阅读UEditor的PHP版上传原代码,绕了个小弯,先去看了Uploader.class.php这个文件,这个上传类要先读取配置项目$config,果断将$config加到阿里云CDN的过滤参数中,再次尝试,依然没有解决。然后就去看了下ueditor.config.js文件,在顶部看到这样一句:服务器统一请求接口路径。serverUrl: URL + "php/controller.php"。如获至宝,迅速点开controller.php文件,看到$action = $_GET['action'];,并且下面通过switch来判断数据内容的,也就是说这个$action才是被统一调用各种参数的公共名称。所以最后将action写到CDN的过滤参数中(实则是过滤参数保留),问题解决。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-01-14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 故障详情,UEditor报配置错误。
  • 查找出错原因,尝试排除故障。
  • 阅读UEditor源码找到坑之所在。
相关产品与服务
内容分发网络 CDN
内容分发网络(Content Delivery Network,CDN)通过将站点内容发布至遍布全球的海量加速节点,使其用户可就近获取所需内容,避免因网络拥堵、跨运营商、跨地域、跨境等因素带来的网络不稳定、访问延迟高等问题,有效提升下载速度、降低响应时间,提供流畅的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档