FFC Keditor.NETの構成、拡張と安全性の経験交流


前書きFCKeditorは非常に広範なHTMLエディタを使用しており、本明細書ではASP.NETの使用シーンからFKeditorとFFC Keditor.NETの構成、機能拡張(カスタムファイルアップロードサブディレクトリ、カスタムファイル名、アップロードピクチャの後期処理など)、セキュリティについて初歩的に説明している。同じ需要の同僚が少し時間を節約するのを助けてほしいです。皆さんもその中の不足を指摘してください。ありがとうございます。一、FCKeditorをカスタマイズしたBasePath BasePathつまりFFC Keditorはウェブサイトの相対パスで、デフォルト値は/fckeditor/で、Web.co nfig appSettingsの中で、それを設定したほうがいいです。2.6.2.3/「/」このようにして、多くの長所があります。開発環境と生産環境は違って、開発環境は普通はhttp://localhost/xxx.com/この場合はFCKeditorは仮想ディレクトリに置かなければなりません。http://localhost/fckeditor/において、複数のサイトの開発に関わる場合、各サイトのFCKeditorに差がある場合は、明らかに最適ではない。また、物理ディレクトリ構造と論理ディレクトリ構造が異なるため、エラーが発生する恐れがあります。Web.com figの構成を採用すれば、開発環境で異なる構成を採用でき、FKeditorの物理経路は生産環境と一致している。FCIKeditorをアップグレードするときは、新しいバージョンのFCI Keditorをそれぞれのバージョン番号のディレクトリに入れて、設定を変更してもいいです。このようにして、静的リソースのクライアントキャッシュ問題のために、異なるユーザに異なるエラーが発生した問題を解決することができる。自分のFC Keditorのバージョン番号を直感的に見ることができます。二、プロファイルアップロードのディレクトリFCKeditorのファイルアップロード(画像アップロードのような)ディレクトリはWeb.co nfig appSettingsを通じて構成できます。例えば、「add key=FFC Keditor:UserFilesPath」value=「/UploadFile/Fraditor/」/」もまた、/FCoditors.Padestoredtor/fidenter/fidenter/fidersしかし、私はFC Keditorディレクトリの内容を変更しないで変更しないでください(fckconfig.jsを除く)と提案しています。これで後でアップグレードして安心して交換すればいいです。三、カスタムファイルをアップロードしたサブディレクトリのフォーマットは、一つのフォルダの下にあまり多くのファイルを保存してはいけないことを知っています(Windowsの下のディレクトリの下で2000が閾値と言われています)。そうでないと、このディレクトリへのアクセスはI/O性能に深刻な影響を与えます。FCKeditorのファイルは単一のディレクトリで保存されます。FCKeditorを拡張しましたが、Web.co nfigアプリSettingsでストレージディレクトリのフォーマットをカスタマイズできます。日付フォーマットのディレクトリは任意に組み合わせられます。例えば、「add key=FCIKeditor:FolderPattern」value=「%y/%m/%d/」/」というように作成されたファイルアップロードサブディレクトリは、2008/10/21/===========================ウェブサイト=となります。%uを追加すると、各ユーザがその識別に基づいて異なるアップロードサブディレクトリを使用することを表します。2.6.3\editor\filemanager\connectors\aspx\config.ascxに現在のログインユーザ識別を取得する論理
 
public override void SetConfig()
{
#region Bochuh's Modification
// Identifier for logined user
// Leave blank for default user upload folder
LoginedUserIdentifier = "44"; //
#endregion

// ……
}
を追加することにより、ユーザに対してログイン後の識別(一般的にはユーザID)に応じて、異なるディレクトリを使用して記憶することができます。例えば、7394/2008/10/21/(7394は現在ログインしているユーザのID)参照:%uは現在ログインしているユーザの識別%yを表しています。現在時刻の年%mは現在時間の月%dを表しています。現在時刻の日付四、カスタムファイルがアップロードされているファイル名フォーマットFKeditorのファイル名に対する処理規則は以下のものです。アップロード後のファイル名はユーザーPC上のファイル名と一致します。n個のリネームファイルがあれば、ユーザーPCに参加するファイル名はExample.xxxとなり、アップロード後のファイル名はExample(n).xxxとなります。私のプロジェクトではユーザーにアップロードするファイル名がGuidとなるように要求されますので、FFC Keditorにも拡張しました。Web.co fig appSettingsではアップロード後のファイルのフォーマットをカスタマイズできます。例えば:はこの拡張機能を追加しました。ウェブ.co.fig appSettingsでは、アップロード後のピクチャURLのドメイン名を設定できます。http://a.cvimg.cn/"/>>図のように、
 七、アップロードファイル名に中国語が含まれているファイルを解決する時に、「invalid file type」という問題を提示します。この問題はWeb.co nfigに配置を追加するだけで解決できます。2.6.3はFFC KeditorのBasePath 8、FFC Keditorの安全性がFFC Keditorの2.3.2バージョンに抜け穴がありました。/editor/filemanager/browser/default/connectors/aspx/connectore.aspxを通じてサーバーに任意のファイルをアップロードすることができます。2.6.2.3似たような問題はまだ発見されていませんが、一般的には使用できないファイルは削除したほうがいいです。FFC Keditor BasePathルートディレクトリには保留があります。すべて削除/editor/filemanager/には保留を除きます。/connectors/aspx/config.ascx/connectors/aspx/upload.aspx以外は、すべて削除/editor/_を削除します。source/editor/filemanager/connectors/aspx/config.ascxのCheckAuthentication()メソッドでは、ユーザーがログインしているかどうかを検証するロジックを追加します。上記の措置はASP.NETのウェブサイトだけに適用されます。他の言語バージョンのウェブサイトは考えられません。付:FCKeditor.Net_に基づく2.6.3修正後のソースコードSOURCE:http://xiazai.jb51.net/201108/yuanma/FCKeditor.Net_2.6.3_20090713.zip BIN(.NET 2.0):http://xiazai.jb51.net/201108/yuanma/FredCK.FCKeditorV2_20090713.zipは以下のファイルの指定行を修正しました。/FileBrowser/Config.cs line 45,116,169/FileBrowser/FileWorkerBase.cs line 68,98,110,125,278の修正された部分は全部「Bozfition」という名前の中に含まれます。また、プロジェクト全体の「ZhuBo's Modification」を検索することによって、変更されたところが早く見られ、自分の拡張機能(例えば、画像の最大高さを設定できる)を簡単に更新することができます。ファイルをアップロードするサブディレクトリのフォーマット」の更新部分をカスタマイズします。新しいソースとdllファイルも更新されました。更新at 2009-07-06初心者の発見に感謝します。以下のBugを修正しました。FFC Keditorは配置されていません。FolderPatternは、FFC Keditor:FolderPatternは空の時に、アップロードした画像が成功した後のパスの中で一つ多くなりました。