fckeditor精简及如何瘦身编辑

刚好需要用到.net编辑器的时候,选择了传说中的FCKeditor好好的研究了一下!之前没有用过,遇到了一定的麻烦,现在拿出来和大家分享,希望对你也会有所帮助! 

FCKeditor是个国外的多语言编辑器,你可以对其配置文件进行简单修改使之支持目前常用Web开发语言的应用,下面我就讲讲FCKeditor2.6.3版本在Asp.net中的具体配置过程,有不足和出错的地方,欢迎指正。 

精简: 

正因为这个编辑器是支持多语言的,所以首先我们针对使用对其做相应的冗余文件删除。 

1、临时文件及文件夹删除:从根目录下开始删除一切以“_”开头的文件及文件夹,因为他们为临时文件和文件夹。删除这类临时文件及文件夹之后,我们还要删除一些根目录下的多余文件,根目录下我们只保留fckconfig.js(配置文件)、fckeditor.js(js方式调用文件)、 fckeditor.asp、 fckstyles.xml(样式)、fcktemplates.xml(模板)文件和editor文件夹。 

2、editor/lang目录:存放的是多语言配置文件,因为我们只可能用到en和zh-cn(简体中文)所以,根据我的选择,我删掉其他的语言配置文件。 

3、editor/skins界面目录:默认带有三个界面(default:默认界面,加载速度相对较快;office2003:相对pp的界面,不过速度确实要慢些;silver:银白色界面,加载速度也相对较快),可以自行决定是否删除其中一两个。 

4、editor/filemanager/connectors目录:存放编辑器所支持的Web动态语言,我们以 Asp.net为例所以保留aspx目录,test.html文件可以帮助你查看某语言下的上传设置等(具体上传设置我将在后面的配置作较为详细讲解),可以自行决定是否删除。 

到此精简完成,你会发现整个编辑器确实“瘦身”不少,呵呵 

基本配置: 

下面我开始对编辑器进行简单配置(并非每步都必须,可根据自己的需要参考修改): 

1、载入fckeditor的.net方法类库FCKeditor.Net_2.6.3.zip 

解压FCKeditor.Net_2.6.3.zip,添加到项目中(载入后别忘了把工程名FredCK.FCKeditorV2.vs2005改为FredCK.FCKeditorV2),在主目录的bin文件夹中添加改引用! 

2、默认语言 

打开fckconfig.js文件(注意此文件是utf-8编码哦),找到FCKConfig.AutoDetectLanguage = true ;(第56行)此句作用为自动检测语言,默认为true,即表示编辑器会根据系统语言自动检测加载相应的语言,我们将其改为false,不让其检测,然后将FCKConfig.DefaultLanguage = 'en';(编辑器默认语言,第57行)改为简体中文"zh-cn"。 

3、字体列表 

依然打开fckconfig.js,因为此编辑器为外国人编写,所以默认不提供中文字体,我们为其加入,找到FCKConfig.FontNames(第142行)加入“宋体;楷体_GB2312;新宋体;黑体;隶书;幼圆;”其他字体可根据自己需要自行加入。 

4、文件上传 

FCKeditor的文件管理程序在editor/filemanager/文件夹下,分为浏览(browser)和上传(upload)两种。“浏览”是指浏览服务器已存在文件并可以选择,也可以上传本地文件至服务器;上传是指快速上传,在窗口中点“上传”选项,选择本地文件后上传就行,但是不能查看服务器上已有上传文件,相对而言不太方便,只是操作更为快捷。也就是说FCKeditor中有一个文件浏览,有两个文件上传,而这些设置是分散在多个文件中,配置相对复杂,下面我大致讲一下: 

在FCKeditor中共有两个文件跟上传功能有关,一个是js文件,一个是aspx文件,前者关闭后界面中不出现相关窗口或按钮,后者关闭后相关功能不可用。 

js文件即是指的fckconfig.js文件,在以前旧版本的fckconfig.js中首先你必需开启如下几项: 

浏览上传功能: 


CODE: 

FCKConfig.LinkBrowser = true ; //文件 

FCKConfig.ImageBrowser = true ; //图片 

FCKConfig.FlashBrowser = true ; //Flash 




快速上传功能: 


CODE: 

FCKConfig.LinkUpload = true ; //同上 

FCKConfig.ImageUpload = true ; //同上 

FCKConfig.FlashUpload = true ; //同上 




即把这几项设为true,而我们今天使用的2.6.3的fckconfig.js中默认已经是开启上传开关显示功能的,所以,如果你要将该编辑器作为前台使用(fckeditor上传漏洞问题一直没有得到较好的改善),考虑到安全性你可能需要关闭文件上传功能,那么你只需要将这几项设置为false即可。 

如果你要使用文件上传功能,那么我们继续配置: 

依然在fckconfig.js文件中,fckeditor对语言默认支持的是php,找到以下两句,进行相应修改: 


CODE: 

var _FileBrowserLanguage = 'php' ; // asp | aspx | cfm | lasso | perl | php | py 

var _QuickUploadLanguage = 'php' ; // asp | aspx | cfm | lasso | php 



我们将其均改为'aspx': 


CODE: 

var _FileBrowserLanguage = 'aspx' ; // asp | aspx | cfm | lasso | perl | php | py 

var _QuickUploadLanguage = 'aspx' ; // asp | aspx | cfm | lasso | php 




*.AllowedExtensions:(其中*号代表:FCKConfig.LinkUpload、FCKConfig.ImageUpload 等)表示允许上传的文件后缀名,为空表示允许所有文件,你可根据自己需要设置上传文件后缀名,一定程度增加安全性,设置的格式可以参考它已有的后缀名设置。 

*.DeniedExtensions:同上,表示禁止上传的文件后缀名。 

注:你设置了允许上传的,当然禁止的也就不必要设置了,本人推荐设置允许的,毕竟禁止的后缀名列表不能罗列完全,可能还有很多我们不曾想到的后缀名。 

对js文件的配置到此已经完成,下面我们进行aspx文件在上传方面的设置: 

文件浏览上传修改: 

打开editor/filemanager/browser/default/connectors/aspx/config.ascx文件,找到: 

private bool CheckAuthentication() 

// WARNING : DO NOT simply return "true". By doing so, you are allowing 
// "anyone" to upload and list the files in your server. You must implement 
// some kind of session validation here. Even something very simple as... 
// 
// return ( Session[ "IsAuthorized" ] != null && (bool)Session[ "IsAuthorized" ] == true ); 
// 
// ... where Session[ "IsAuthorized" ] is set to "true" as soon as the 
// user logs in your system. 

return false; 


将return false改为return true,即允许上传,最好在前面加上session判断用户登陆,以避免所有人都可以上传。 

UserFilesPath= "/userfiles/" ;为定义上传目录,可根据自己情况进行修改,我将其改为upload目录。 

注:注意FCKeditor是不支持虚拟目录的,你的所有路径都是针对网站根目录的绝对路径。 


到此上传基本配置已经完成,整个编辑器最基本的配置也已经结束了

 

 

FckEditor网页编辑器的使用总结2008年09月26日 星期五 10:50FCKeditor的官方网站是:http://www.fckeditor.net/download 
目前最新的FCKeditor 2.6.3版本。
请在此页下载:http://sourceforge.net/project/showfiles.php?group_id=75348 
要下载Fckeditor 和FckEditor.Net两个压缩文件.

1. 解压FCKeditor.Net_2.6.3.zip找到bin/Debug/2.0下的FredCK.FCKeditorV2.dll,加入到你项目中的bin中.
2.解压FCKeditor_2.6.3.zip,把整个fckeditor加入到项目中的根目录下
3,在程序目录下新建一个文件夹用来保存上传的文件 

二 
1,精简 fckeditor 文件 
A, 将_开头的文件和文件夹全部删掉 
B, 将 fckeditor/editor/lang 语言删掉,保留一个 
C, 将 fckeditor/editor/skins 皮肤删掉,保留一个 
D, 将 editor/filemanager/connectors 编程语言删掉,保留一个 

三 
添加引用 FredCK.FCKeditorV2.dll 到程序和工具箱 

四 
点击FCKeditor,选择属性,将 BasePath 改为 /程序名/fckeditor/ ,这样在线编辑器就出来了 

五 
修改Fckconfig.js ,以下几项必须修改 

FCKConfig.DefaultLanguage = 'zh-cn' ; 
var _FileBrowserLanguage = 'aspx' ; // asp | aspx | cfm | lasso | perl | php | py 
var _QuickUploadLanguage = 'aspx' ; // asp | aspx | cfm | lasso | perl | php | py 

六 
1,基本的文字输入搞定之后,接下来就是上传,点击图片按钮,报错 
A,Fckeditor 默认是不能上传的,修改 /fckeditor/editor/filemanager/connectors/aspx config.ascx,

return true; 
B,修改配置文件,将上传的路径 指向你要上传的文件的名字 <add key="FCKeditor:UserFilesPath" value="/

程序名/保存文件的文件夹/" /> 
C,解决中文乱码问题 fckeditor/editor/filemanager/browser/default frmupload.html 以UTF-8格式重新保

存 

七 
整个FCKeditor 就设置好了,接下来(选项) 
A, 继续删文件 
1,/fckeditor 保留 editor,fckconfig.js,fckeditor.js,fckstyles.xml,fcktemplates.xml,

license.txt 

B,修改 Fckconfig.js,突出个性在线编辑器 
1,修改在线编辑器的宽度和高度,在属性里面 
2,FCKConfig.TabSpaces = 1 ; 允许TAB 
3, FCKConfig.ToolbarCanCollapse = false ; 可以折叠 
4, 自己一个一个对 
FCKConfig.ToolbarSets["Default"] = [ 
['NewPage','Preview','-','Templates'], 
['Cut','Copy','Paste','PasteText','PasteWord','-','SpellCheck'], 
['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'], 
['Bold','Italic','Underline','-'], 
['OrderedList','UnorderedList','-','Outdent','Indent'], 
['JustifyLeft','JustifyCenter','JustifyRight'], 
['Link','Unlink'], 
['Image','Flash','Table','Rule','Smiley'], 
['FontName','FontSize'], 
['TextColor','BGColor'] 
// No comma for the last row. 
] ; 
5,FCKConfig.FontNames = '宋体;楷体_GB2312;黑体;隶书;Arial;Times New Roman' ; 

C, 修改 源文件,CSS 达到你想要的效果,例如换行 


精简fckeditor
  正因为这个编辑器是支持多语言的,所以首先我们针对使用对其做相应的冗余文件删除。
  
  1、临时文件及文件夹删除:从根目录下开始删除一切以“_”开头的文件及文件夹,因为他们为临时文件和

文件夹。删除这类临时文件及文件夹之后,我们还要删除一些根目录下的多余文件,根目录下我们只保留

fckconfig.js(配置文件)、fckeditor.js(js方式调用文件)、fckeditor.php(php方式调用文件,新版本通

过该文件统一调用php4或者php5的调用文件,fckeditor_php4.php/fckeditor_php5.php你可以根据自己服务器

使用的情况删减,建议都保留)、fckeditor_php4.php(php4的调用文件)、fckeditor_php5.php(php5的调用

文件)、fckstyles.xml(样式)、fcktemplates.xml(模板)文件和editor文件夹。 
  
  2、editor/lang目录:存放的是多语言配置文件,因为我们只可能用到en和zh-cn(简体中文)所以,根据

我的选择,我删掉其他的语言配置文件。 

  3、editor/skins界面目录:默认带有三个界面(default:默认界面,加载速度相对较快;office2003:相

对pp的界面,不过速度确实要慢些;silver:银白色界面,加载速度也相对较快),可以自行决定是否删除其中

一两个。 

  4、editor/filemanager/browser/default/connectors目录:存放编辑器所支持的Web动态语言,我们以php

为例所以保留php目录,test.html文件可以帮助你查看某语言下的上传设置等(具体上传设置我将在后面的配置

作较为详细讲解),可以自行决定是否删除。 

  5、editor/filemanager/upload目录:同理。 


可能出现的错误:
FCKeditor出现"this connector is disabled Please check the"editor/filemanager/connectors/aspx/config.aspx"错误的解决办法 

解决办法: 

打开editor/filemanager/connectors/aspx/config.ascx修改CheckAuthentication()方法,返回true 

C# code 

private bool CheckAuthentication()
{
// WARNING : DO NOT simply return "true". By doing so, you are allowing
// "anyone" to upload and list the files in your server. You must implement
// some kind of session validation here. Even something very simple as...
//
// return ( Session[ "IsAuthorized" ] != null && (bool)Session[ "IsAuthorized" ] == true );
//
// ... where Session[ "IsAuthorized" ] is set to "true" as soon as the
// user logs in your system. 

  return true;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一路奔跑1314

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值