http://xiangai.taobao.com
http://shop148612228.taobao.com

CKFinder的_thumbs缓存文件夹

《CKFinder2.0.2的使用与破解》 作者: 宓晨

       说下背景,发下牢骚!

       由于网站需要支持对图片的上传以及操作的管理,还有文字+图片的组合上传。问了一下同事并且上网逛了逛,找了个支持文字+图片的插件 【CKEditor(免费)】3.6.1版本。按照前人的配置,才发现最新版本【CKEditor】支持图片上传的功能已经移除了!2.几版本的都还能用 呢,这版本越高功能咋还越来越少了呢?!真他妈坑爹!!

(上半部分是CKEditor,下半部分是CkFinder。整合使用之后页面不需要CkFinder,红框里面的就是“广告”)

       百度之后,发现【CKEditor】3.6.1需要和【CkFinder(收费)】2.0.2整合进行使用。在网上找了N个方法,研究了能有1天半,也没 整合成功,我就纳闷那些帖子错了还是我错了。。。终于放弃新版本了,打算采用【CKEditor】2.几版本来做文字+图片组合上传的功能,图片上传管理就用【CKFinder】2.0.2弄了。

       先简单说一下【CKFinder】的配置。

      1. 下载CKFinder的Asp.NET版,将其解压到Web根目录下

      2. 复制/bin/Release目录下的ckfinder.dll文件至站点bin目录

      3. 精简目录:_samples文件夹(示例文件,可以删除),_source文件夹(源程序文件,可以删除)

      CKFinder的配置

      1. 打开 " \ckfinder\config.ascx ",为SetConfig方法中的BaseUrl 指定默认路径,如:

      // 以userfiles 为默认路径,其目录下会自动生成images、flash等子目录。

      BaseUrl = " ~/ckfinder/userfiles/",注意“~/ ”。

CKFinder的应用

1. 在工具栏中添加站点根目录bin目录中的ckfinder.dll控件

2. 拖放控件到Web页面

3. 修改CKFinder控件属性BasePath为ckfinder目录的相对路径

常见问题

1.因为安全原因,文件不可浏览。请联系系统管理员并检查CKFinder配置文件。

原因:未设置用户身份验证或者用户未登录。

解决:

在CKFinder的config.ascx文件中修改

public override bool CheckAuthentication()

{

return true;

}

2. 访问带有CKFinder的页面时报错“HTTP 错误 404 - Not Found”

解决:修改CKFinder控件的BasePath属性为ckfinder目录的相对路径

【】的配置:

打开ckeditor/config.js

CKEDITOR.editorConfig = function( config )
{

//添加的内容

}

添加的内容:

    config.filebrowserBrowseUrl = "ckfinder/ckfinder.html";
    config.filebrowserImageBrowseUrl = "ckfinder/ckfinder.html?Type=Images";
    config.filebrowserFlashBrowseUrl = "ckfinder/ckfinder.html?Type=Flash";
    config.filebrowserUploadUrl = "ckfinder/core/connector/aspx/connector.aspx?command=QuickUpload&type=Files";
    config.filebrowserImageUploadUrl = "ckfinder/core/connector/aspx/connector.aspx?command=QuickUpload&type=Images";
    config.filebrowserFlashUploadUrl = "ckfinder/core/connector/aspx/connector.aspx?command=QuickUpload&type=Flash";

(注:如果你的页面不在根目录下,打比方在Website1/A/B/下面,就需要改为../../../ckfinder/ckfinder.htm其他的配置代码l以此类推。你看一下所需要用到控件的页面在什么位置,算一下最多跳多少次到最上级目录,就加几个../)

自己总结或许以后有用:

  1. 修改文件存放位置:如果按照插件默认的设置,是在ckfinder\userfiles下,这极不方便维护与查找。修改ckfinder\config.ascx下BaseUrl = "文件存放的文件夹(这个文件夹下会自动生成File,images,flash文件夹,还有个thumb缓存文件夹,你上传任何文件都会再次出现在Thumb文件夹下形成缩略图)"
  2. 屏蔽Thumb文件夹:ckfinder\config.ascx下,删除以下代码可以不创建Thumb文件夹以及缩略图文件,大大减少磁盘占用空间。

        Thumbnails.Url = BaseUrl + "_thumbs/";

        if (BaseDir != "")

        {

            Thumbnails.Dir = BaseDir + "_thumbs/";

        }

        Thumbnails.Enabled = true;

        Thumbnails.DirectAccess = false;

        Thumbnails.MaxWidth = 100;

        Thumbnails.MaxHeight = 100;

        Thumbnails.Quality = 80;

3.     屏蔽File,images,flash文件夹:ckfinder\config.ascx下,

        type = ResourceType.Add("Files");

        type.Url = BaseUrl + "files/";

        type.Dir = BaseDir == "" ? "" : BaseDir + "files/";

        type.MaxSize = 0;

        type.AllowedExtensions = new string[] { “巴拉巴拉XXX很长的”};

        type.DeniedExtensions = new string[] { };

        type = ResourceType.Add("Images");

        type.Url = BaseUrl + "images/";

        type.Dir = BaseDir == "" ? "" : BaseDir + "images/";

        type.MaxSize = 0;

        type.AllowedExtensions = new string[] { "bmp", "gif", "jpeg", "jpg", "png" };

        type.DeniedExtensions = new string[] { };

        type = ResourceType.Add("Flash");

        type.Url = BaseUrl + "flash/";

        type.Dir = BaseDir == "" ? "" : BaseDir + "flash/";

        type.MaxSize = 0;

        type.AllowedExtensions = new string[] { "swf", "flv" };

        type.DeniedExtensions = new string[] { };

不想生成哪个文件夹,就删掉哪段代码即可。

破解去广告:

用记事本打开ckfinder.js,由于代码太多,用VS查看特卡。找到下方3~4处代码(默认是向下搜索,如果找不到选择向上搜索),删之...

if(!t)this.dV().aC(0).appendHtml(p);

if(N.files.length)N.fa=G;

if(a.bF&&1==a.bs.indexOf(a.bF.substr(1,1))%5&&I.toLowerCase().replace(a.jG,'')!=a.ed.replace(a.jG,'')||a.bF&&a.bF.substr(3,1)!=a.bs.substr((a.bs.indexOf(a.bF.substr(0,1))+a.bs.indexOf(a.bF.substr(2,1)))*9%(a.bs.length-1),1))w.app.msgDialog('',"\124\150\151\163\x20\146\x75\156\143\x74\151\157\x6e\x20\x69\x73\x20\144\x69\x73\141\x62\x6c\x65\x64\x20\x69\x6e\040\164\150\x65\x20\144\145\x6d\x6f\x20\x76\145\162\163\x69\157\156\040\157\146\040\x43\x4b\106\151\x6e\144\x65\x72\x2e\x3c\x62\162\x20\057\076\120\x6c\145\x61\x73\x65\x20\166\x69\163\151\164\040\164\150\x65\040\074\x61\040\150\162\x65\x66\075\x27\x68\164\x74\x70\x3a\057\x2f\143\153\146\x69\x6e\144\145\162\x2e\x63\x6f\155\x27\x3e\x43\113\106\151\156\x64\145\x72\040\167\x65\x62\040\163\x69\164\145\074\x2f\x61\x3e\040\164\157\040\x6f\142\164\x61\151\156\040\141\040\166\141\x6c\x69\144\x20\154\x69\143\x65\x6e\163\145\056");else

if(a.bF&&1==a.bs.indexOf(a.bF.substr(1,1))%5&&s.toLowerCase().replace(a.jG,'')!=a.ed.replace(a.jG,'')||a.bF&&a.bF.substr(3,1)!=a.bs.substr((a.bs.indexOf(a.bF.substr(0,1))+a.bs.indexOf(a.bF.substr(2,1)))*9%(a.bs.length-1),1))v.msgDialog('',"\x54\x68\x69\x73\x20\x66\x75\x6e\143\x74\151\x6f\x6e\x20\151\163\040\144\151\163\141\142\154\x65\x64\x20\151\x6e\040\x74\150\145\x20\144\145\155\x6f\040\x76\145\162\x73\151\157\x6e\040\x6f\146\x20\103\113\106\151\x6e\x64\145\x72\056\x3c\142\x72\040\057\076\x50\x6c\145\141\163\145\x20\x76\151\x73\151\164\040\164\150\145\040\074\x61\x20\150\x72\145\146\x3d\x27\150\164\164\x70\x3a\x2f\057\143\153\146\151\156\144\145\162\x2e\143\157\155\x27\x3e\103\x4b\106\x69\156\x64\x65\x72\040\x77\x65\x62\040\x73\151\x74\x65\074\057\141\076\x20\164\157\040\157\142\x74\141\151\x6e\040\x61\040\x76\x61\x6c\151\144\040\x6c\x69\x63\145\156\163\145\x2e");else

注:在网上看的查找什么”qu”,之后再注释的方法在新版本已经不适用了。1,2段代码可以很方便的搜索进行删除。3,4段代码我搜的是if(a.bF&&1,发现有3段以这个打头的代码,留下那个加密不太多的,删掉这两个超长加密的,这样就破解了。刚才在单位又重新做了一次,发现加密的地方只有1段了,而且盲文也变了,大家灵活着用吧。(看第一图和下图的区别:去广告,屏蔽Thumb、File、Flash文件夹)

举报

来源:宓晨

| 分享(7) | 浏览(21)

源地址: http://blog.renren.com/GetEntry.do?id=733642830&owner=225800820

posted @ 2013-07-10 20:29  万事俱备就差个程序员  阅读(971)  评论(0编辑  收藏  举报

http://xiangai.taobao.com
http://shop148612228.taobao.com
如果您觉得对您有帮助.领个红包吧.谢谢.
支付宝红包
微信打赏 支付宝打赏