FCKeditor (後更名為 CKEditor) 是經典的 Web 富文本編輯器。本文記錄 2.5 版在 ASP.NET 環境下的集成步驟與關鍵配置。
https://www.fckeditor.net/download/FCKeditor/ 文件夾bin/FredCK.FCKeditorV2.dll<appSettings>
<!-- 編輯器核心文件路徑 -->
<add key="FCKeditor:BasePath" value="~/FCKeditor/" />
<!-- 用戶上傳文件存儲路徑 (需寫入權限) -->
<add key="FCKeditor:UserFilesPath" value="/Files" />
</appSettings>
FredCK.FCKeditorV2.dllID (如 FCKeditor1)ValidateRequest="false" (允許 HTML 內容提交)
<%@ Page Language="C#" ValidateRequest="false" %>
string content = Server.HtmlEncode(FCKeditor1.Value);
FCKeditor1.Value = Server.HtmlDecode(dbContent);
if (!string.IsNullOrEmpty(FCKeditor1.Value)) { ... }
// 語言設置
FCKConfig.DefaultLanguage = 'zh-cn';
// 工具欄精簡
FCKConfig.ToolbarSets["Basic"] = [
['Bold', 'Italic', 'Underline'],
['OrderedList', 'UnorderedList'],
['Link', 'Unlink', 'Image'],
['Source']
];
// 文件上傳類型限制
FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=File';
FCKConfig.ImageBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Image';
// 上傳目錄權限:需確保 IIS_IUSRS 對 /Files 文件夾有寫入權限
Server.HtmlEncode,或配合 AntiXSS 庫web.config 設置 <httpRuntime requestValidationMode="2.0" /> 配合頁面 ValidateRequest="false"../ 等路徑遍歷字符| 問題 | 解決方案 |
|---|---|
| 工具欄不顯示 | 檢查 BasePath 路徑是否正確,瀏覽器控制台看 404 |
| 圖片上傳失敗 | 確認 /Files 文件夾寫入權限,檢查 fckconfig.js 上傳路徑配置 |
| 內容截斷 | 檢查 maxRequestLength (web.config) 與 FCKConfig.MaxFileSize |
| IE 下報錯 | 添加 <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9" /> |