FCKeditor是一個功能強大支持所見即所得功能的文本編輯器,可以為用戶提供微軟office軟件一樣的在線文檔編輯服務。它不需要安裝任何
形式的客戶端,兼容絕大多數主流瀏覽器,支持ASP.Net、ASP、ColdFusion
、PHP、Java、Active-FoxPro、Lasso、Perl、ython 等編程環(huán)境。
官方網站 http://www.fckeditor.net/
官方文檔 http://wiki.fckeditor.net/
下載地址 http://www.fckeditor.net/download/default.html
FCKeditor安裝和配置
下載FCKeditor2.63.zip和FCKeditor.NET2.63版的2個zip包
(a) FCKeditor_2.6.3是html文件、Javascript文件和圖片等資源文件
(b) FCKeditor.Net_2.6.3.zip是一個ASP.NET控件DLL文件
Asp.Net項目中添加對 FCKeditor 的引用
1. 項目上選擇添加引用(Add Reference…),找到 瀏覽(Browse)標簽,然后定位到你解壓好的FredCK.FCKeditorV2.dll,確認就可以了
2.
為了方便RAD開發(fā),可以把FCKeditor控件也添加到VS的工具箱(Toolbox)上來,展開工具箱的常用標簽組(General),右鍵選擇組
件(Choose Items…),在對話框上直接找到瀏覽按鈕,定位FredCK.FCKeditorV2.dll,然后確認就可以了
3. 配置Web.Config,在<appSettings>節(jié)點添加,如下所示:
<
appSettings
>
<
add
key
="FCKeditor:BasePath"
value
="~/Web/fckeditor/"
/>
<
add
key
="FCKeditor:UserFilesPath"
value
="~/Web/Upload/"
/>
</
appSettings
>
FCKeditor 的配置:
進入FCKeditor文件夾,編輯 fckconfig.js 文件
1、修改:
var _FileBrowserLanguage = ‘php’ ; // asp | aspx | cfm | lasso | perl | php | py
var _QuickUploadLanguage = ‘php’ ; // asp | aspx | cfm | lasso | php
為:
var _FileBrowserLanguage = ‘aspx’ ; // asp | aspx | cfm | lasso | perl | php | py
var _QuickUploadLanguage = ‘aspx’ ; // asp | aspx | cfm | lasso | php
2、配置語言
修改:
FCKConfig.DefaultLanguage = ‘en’ ;
改為:
FCKConfig.DefaultLanguage = ‘zh-cn’ ;
3、配置皮膚,有default、office2003、silver風格等,可以使用默認。
FCKConfig.SkinPath = FCKConfig.BasePath + ’skins/default/’ ;
4、在編輯器域內可以使用Tab鍵。(1為是,0為否)
FCKConfig.TabSpaces = 0 ; 改為 FCKConfig.TabSpaces = 1 ;
5、加上幾種常用的字體:
FCKConfig.FontNames = ‘宋體;黑體;隸書;楷體_GB2312;Arial;Comic Sans MS;Courier New;Tahoma;Times New Roman;Verdana’;
6、編輯器域內默認的顯示字體為12px,想要修改可以通過修改樣式表來達到要求,打開/editor/css/fck_editorarea.css,修改font-size屬性即可
7、關于安全性
如果你的編輯器用在前臺非認證的情況下,推薦使用Basic的toolbar
FCKConfig.ToolbarSets["Basic"] = [
['Bold','Italic','-','OrderedList','UnorderedList','-','Link','Unlink','Image','-','About']
] ;
8、在上傳文件窗口點擊瀏覽服務器,可能會出現 the server didn’t send back a proper xml…..
錯誤提示,是因為FCKeditor要求不同類型的文件分別傳到不同的目錄,包括file,image,falsh,media 等目錄,可以先建立起來試試。
FCKEditor.NET 2.6 的安全性配置
文件上傳,一直是容易被利用的攻擊通道,呵呵,所以這里要重點提一下:
打開 editor/filemanager/connectors/aspx/config.ascx
private
bool
CheckAuthentication()
{
//為了防止任意用戶均可以打開上傳頁或者瀏覽服務器文件
//建議將此處和你的后臺管理權限進行集成,如果不需要驗證,則直接返回 true 即可
//------------------------------------------------
//1. 假設你用 session 存儲用戶的登錄驗證信息,假設 session 的 key 為 auth
// 則需要返回
//return (Session["auth"] != null && Session["auth"] == "驗證值");
//2. 如果你用 FORM 驗證方式,則可以驗證
//return Page.User.Identity.IsAuthenticated;
// 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
;
}
我對上面的部分進行漢化和使用的說明
FCKeditor的精簡和清理
進入FCKeditor文件夾,把所有“_”開頭的文件和文件夾刪掉,這些都是一些范例,只保留editor文件夾、fckconfig.js、fckeditor.js、fckstyles.xml、fcktemplates.xml就可以了;
進入editor文件夾,刪掉“_source”文件夾,里面放的同樣是源文件;
退回上一級目錄進入filemanager文件夾,有browser和upload兩個文件夾。進入browser"default"connectors,只保留aspx文件夾,其余的刪掉;mcpuk目錄亦可刪除;upload也一樣,只保留aspx文件夾;
退到editor再進入images文件夾,smiley里面放的是表情圖標,有msn和fun兩個系列,如果你想用自己的表情圖標,可以把它們都刪除;如果你想用這里的表情圖標那就不要刪了;
lang里面放的是語言包,如果只是用簡體中文,那么只保留fcklanguagemanager.js、zh-cn.js兩個文件就行了,建議也
保留en.js(英文)、zh.js(繁體中文)兩個文件,fcklanguagemanager.js是語言配置文件,有了它才能和
fckconfig.js里的設置成對,對應上相應的語言文件,一定要保留!
再退出lang文件夾,進入skins文件夾,如果你想使用FCKeditor默認的奶黃色,那就把除了default文件夾外的另兩個文件夾直接刪除,如果想用別的,那就看你自己的喜好了。