解决百度编辑器ueditor上传附件图标暴露后台地址问题
使用百度编辑器在后台上传附件后会生成一个附件图标,附件图标使用的是绝对路径URL,这将导致后台路径给暴露出去了,后台入口也非常容易找到,导致网站不安全。解决方法:
1.把后台ueditor/dialogs/attachment/fileTypeImages文件夹下的图片目录复制前台目录中,如:static/ueditor/dialogs/attachment/fileTypeImages。
2.查看自己的百度编辑器引用的文件,如ueditor.all.min.j或ueditor.all.js,打开并修改这个文件。修改文件时我们不必把整个框架结构去看一遍,那样很让费时间,只需要找到关键部分修改即可,搜索关键字dialogs/attachment/fileTypeImages,会看到下面的代码:
return { commands:{ 'insertfile': { execCommand: function (command, filelist){ filelist = utils.isArray(filelist) ? filelist : ; var i, item, icon, title, html = '', URL = me.getOpt('UEDITOR_HOME_URL'), /* * iconDir 就是定义上传附件中的图标的路径了 */ iconDir = URL + (URL.substr(URL.length - 1) == '/' ? '':'/') + 'dialogs/attachment/fileTypeImages/'; for (i = 0; i < filelist.length; i++) { item = filelist; icon = iconDir + getFileIcon(item.url); title = item.title || item.url.substr(item.url.lastIndexOf('/') + 1); html += '' + 'http://www.1327.net/' + '' + title + '' + '
'; } me.execCommand('insertHtml', html); } } }}找到其中定义图标路径的conDIr变量,并修改成自己的路径即可,如:
//iconDir = URL + (URL.substr(URL.length - 1) == '/' ? '':'/') + 'dialogs/attachment/fileTypeImages/';iconDir = '/static/ueditor/dialogs/attachment/fileTypeImages/'; 3.修改完后一定要在浏览器设置中清理浏览器缓存,不然总是有缓存,修改代码不生效。
*删除百度编辑器上传附件图标操作
从上面代码也能发现,删除html变量中就是图标的设置代码,如果不需要百度编辑器中上传附件的图标显示,直接删除上面的代码就行了。
页:
[1]