- 浏览: 406910 次
- 性别:
- 来自: 哈尔滨
最新评论
-
springdata_springmvc:
如何在java Web项目中开发WebService接口,地址 ...
JAVA6开发WebService (二)——JAX-WS例子 -
springdata-jpa:
如何在java Web项目中开发WebService接口,地址 ...
JAVA6开发WebService (三)——几个概念 -
springmvc-freemarker:
如何在java Web项目中开发WebService接口,地址 ...
JAVA6开发WebService (一) -
yuanfen2014:
[color=red][/color] 学习了
jdom解析xml -
di1984HIT:
我很喜欢你对设计模式的理解。
JAVA设计模式学习笔记5——模版方法模式(Template Method Pattern)
破解
CKFinder是收费的,可是我们都比较穷,用不起那么昂贵的东西,所以只能即无奈又无耻的去破解了。在http://www.imobile365.com/acticles/reviews-and-news/12-others/4551-ckeditor33ckfinder20ckf.html看到个破解办法,试了一下,果然好用,不过作为一名程序员,感情很矛盾啊,国人的破解技术还是一流啊。
打开ckfinder.js文件
一、找到<h4 class='message_content'></h4>,改为<h4 style='display:none;' class='message_content'></h4>
二、找到
var p="\x3c\144\x69\x76\040\x63\154\x61\163\x73\x3d\x27\x76\151\145\167\040\x74\157\x6f\x6c\137\x70\141\156\145\154\047\040\163\x74\171\154\x65\075\x27\144\151\x73\160\154\141\171\x3a\x20\x62\154\x6f\143\x6b\x20\x21\151\155\x70\157\x72\164\141\x6e\x74\x3b\040\x70\x6f\163\x69\x74\151\157\x6e\072\x20\x73\x74\141\x74\x69\x63\040\041\151\x6d\160\157\x72\x74\141\156\164\073\040\x63\157\154\157\x72\072\x20\142\x6c\x61\x63\153\x20\x21\x69\x6d\160\157\162\164\141\x6e\164\073\040\x62\141\143\x6b\147\162\x6f\x75\156\144\x2d\143\x6f\x6c\x6f\x72\x3a\x20\x77\150\151\164\145\040\x21\151\155\x70\x6f\162\164\141\156\164\073\047\x3e\x54\x68\151\163\x20\151\x73\x20\164\150\x65\x20\x44\x45\115\x4f\040\166\x65\162\163\151\x6f\156\040\x6f\146\x20\x43\113\106\151\156\x64\x65\162\x2e\040\x50\154\145\141\x73\145\x20\166\x69\x73\151\164\x20\164\x68\x65\040\x3c\141\040\150\x72\x65\x66\075\x27\x68\x74\164\x70\x3a\x2f\057\x63\153\146\x69\156\x64\145\162\x2e\x63\157\155\047\040\164\141\x72\x67\145\x74\075\047\x5f\x62\154\141\x6e\153\047\076\x43\113\106\x69\x6e\144\x65\x72\040\x77\145\x62\x20\163\151\x74\145\074\x2f\x61\076\x20\x74\157\040\157\x62\164\x61\x69\156\040\141\x20\x76\x61\x6c\151\x64\040\x6c\x69\143\145\x6e\163\145\056\074\x2f\144\151\166\076";
这个串因为大家的版本不同可能不太一样,总之就是很长一段八进制和十六进制的字符串,将其改为var p=" ";
三、找到“\x54\150\151\x73\x20\x66\x75\x6e\143\164\x69\157\156\x20\x69\163\x20\144\151\163\x61\142\154\x65\x64\040\x69\x6e\040\x74\x68\145\x20\x64\x65\155\157\x20\166\145\x72\163\151\x6f\x6e\x20\x6f\x66\x20\103\x4b\106\x69\156\144\145\x72\056\074\142\162\040\x2f\x3e\x50\154\x65\x61\x73\x65\040\166\151\x73\151\x74\x20\x74\x68\145\x20\x3c\x61\040\x68\162\145\x66\x3d\x27\x68\x74\164\160\x3a\x2f\x2f\x63\x6b\146\x69\x6e\x64\145\x72\x2e\143\x6f\155\x27\x3e\x43\x4b\106\151\156\144\x65\162\040\167\x65\x62\040\x73\x69\x74\145\074\x2f\x61\x3e\x20\164\157\040\x6f\142\164\x61\x69\156\x20\141\040\x76\141\154\151\144\040\154\151\x63\145\156\x73\x65\056”
将他前面 if 中的语句删掉,
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))
改成 if(false),这样可以解决一些方法不能使用的问题,比如拖拽文件到另一个文件夹。
ckfinder.js 中有很多这种转成16进制的字符,如果再遇到什么提示可以
document.write("\x65\144\x2e\x20");
这样就能看到要提示的是什么东西了,可以酌情修改了。
改完之后发现没效果可以清一下缓存,这样破解之后可以屏蔽掉“This is the demo version of CKFinder. Click here to visit our web site ”提示信息,也可以解决拖拽文件到另一个文件夹等功能不能使用的问题。暂时还没发现其他关于license的问题,不过要是想用个完整的 CKFinder,还是花店钞票吧。
配置
baseURL、baseDir
baseURL 是CKFinder发布后URL基本路径;baseDir是服务器上文件存放地址的绝对路径,且必须是全路径。这两个地址指向必须是相同的,CKFinder 还要求路径中必须有最后一个斜线,如:
<baseDir>D:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\CKEditor_test\files\</baseDir> <baseURL>/CKEditor_test/files/</baseURL>
或者也可以不写 baseDir 属性,让CKFinder 根据baseURL自己去判断文件存放路径:
<baseDir></baseDir>
如果想了解更多关于baseURL和baseDir的信息,可以浏览 baseURL and baseDir Parameters Explained 。
图片相关(Images)
accessControls
accessControls 用于为 CKFinder 中文件及文件夹对于不同用户的不同操作权限。默认情况是为所有用户开放所有文件及文件夹的所有操作权限:
<accessControls> <accessControl> <role>*</role> <resourceType>*</resourceType> <folder>/</folder> <folderView>true</folderView> <folderCreate>true</folderCreate> <folderRename>true</folderRename> <folderDelete>true</folderDelete> <fileView>true</fileView> <fileUpload>true</fileUpload> <fileRename>true</fileRename> <fileDelete>true</fileDelete> </accessControl> </accessControls>
role - 角色名称,默认是所有用户(*)。
resourceType - 资源类型,如Images, Flash, Files。默认为当前配置对所有类型(*)有效。
folder
- 要进行限制的文件夹。
folder*
and file* - 所有以folder和file开头的配置,都是一个布尔值,看名称就知道是干什么的了。
可以在 accessControls 下配置多个 accessControl 节点。所有的子文件夹或文件默认继承它们父文件夹的权限配置。
userRoleSessionVar
userRoleSessionVar 是一个 session 级的变量的名称,CKFinder 用这个变量来获取当前用户的角色。
<userRoleSessionVar>CKFinder_UserRole</userRoleSessionVar>
要切换至不同的角色,可以在 session 中这样控制:
HttpSession session = request.getSession(true); session.setAttribute("CKFinder_UserRole", "admin");
其中,admin 为角色的名称,也就是上面 accessControl 中 role 配置的名称。
thumbs
CKFinder 允许为上传的图片创建缩略图,缩略图的配置在 thumbs 节点中,如:
<thumbs> <enabled>true</enabled> <url>%BASE_URL%_thumbs/</url> <directory>%BASE_DIR%_thumbs</directory> <directAccess>false</directAccess> <maxHeight>100</maxHeight> <maxWidth>100</maxWidth> <quality>80</quality> </thumbs>
maxWidth
和 maxHeight
–设置缩略图的宽度和高度,单位为像素。
quality
- 缩略图的品质,1至100之间。可以接受的品质的值最小为45左右,最常用的值为80左右。
directAccess
- 这个配置可以提高 CKFinder 的整体性能。默认情况下,CKFinder 连接至 server connector 以获取缩略图。通常情况下,connector 会发送HTTP/304 Not Modified
header以减轻服务器端压力,如果directAccess被置为true,CKFinder 直接从服务器获取缩略图。
imgWidth
imgHeight
imgQuality
这三个属性分别用于设置上传图片的最大宽度、最大高度以及图片品质。如果上传的图片大小超过预设的值,CKFinder 将按比例对其进行缩放。
资源类型相关(Resource Types )
CKFinder 内置了3种文件类型:files , images , Flash 。它们在config.xml 中的默认配置如下:
<types> <type name="Files"> <url>%BASE_URL%files/</url> <directory>%BASE_DIR%files</directory> <maxSize>0</maxSize> <allowedExtensions>7z,aiff,asf,avi,bmp,csv,doc,docx,fla,flv,gif,gz,gzip,jpeg,jpg,mid,mov,mp3,mp4,mpc,mpeg,mpg,ods,odt,pdf,png,ppt,pptx,pxd,qt,ram,rar,rm,rmi,rmvb,rtf,sdc,sitd,swf,sxc,sxw,tar,tgz,tif,tiff,txt,vsd,wav,wma,wmv,xls,xlsx,zip </allowedExtensions> <deniedExtensions></deniedExtensions> </type> <type name="Images"> <url>%BASE_URL%images/</url> <directory>%BASE_DIR%images</directory> <maxSize>0</maxSize> <allowedExtensions>bmp,gif,jpeg,jpg,png</allowedExtensions> <deniedExtensions></deniedExtensions> </type> <type name="Flash"> <url>%BASE_URL%flash/</url> <directory>%BASE_DIR%flash</directory> <maxSize>0</maxSize> <allowedExtensions>swf,flv</allowedExtensions> <deniedExtensions></deniedExtensions> </type> </types>
url
和 directory
– 这种类型的文件上传的 url 和 dir。
maxSize
– 文件最大限制,默认以 bytes 为单位。此处也可以使用 G
, M
, K 为单位,
1M
为 1048576 bytes (1 Megabyte), 1K
为 1024 bytes (1 Kilobyte), 1G
为 1 Gigabyte。
allowedExtensions - 允许上传的文件类型。
deniedExtensions - 不允许上传的文件类型。
建议使用allowedExtensions。
也可以扩展自定义的文件类型,如:
<types> <type name="MSdocs"> <url>%BASE_URL%MSdocs/</url> <directory>%BASE_DIR%MSdocs</directory> <maxSize>2M</maxSize> <allowedExtensions>doc,ppt,xls</allowedExtensions> <deniedExtensions></deniedExtensions> </type> </types>
安全性相关(security)
checkDoubleExtension - 接受一个布尔值,对允许上传列表中扩展名的校验规则。如果置为 true,每个“.”后的单词均被视为文件的扩展名进行校验,否则,只将最后一个“.”后的单词视为扩展名并进行校验。
secureImageUploads - 是否对上传的图片类型的文件进行格式校验。
htmlExtensions - 通知 CKFinder 将何种类型的文件视为 HTML 代码上传。
hideFolders - 当一些文件夹不想被用户看到时,如cvs、svn的文件夹不想让用户浏览,可以在这里配置其对用户隐藏。
hideFiles - 当一些文件不想被用户看到时,可以在这里配置其对用户隐藏。
扩展配置(Extending CKFinder Configuration)
我们可以通过继承 com.ckfinder.connector.configuration.Configuration 类来扩展 CKFinder 配置,或者更改 config.xml 中的配置。比如,前面我们为了使得 CKFinder 可用,将 <enabled>true</enabled> 置为 true,这并不是CKFinder推荐的做法,CKFinder 建议我们重写 checkAuthentication 方法,那么现在,这个任务就可以在这里完成了。
首先,需要建立一个自定义的类,继承于“com.ckfinder.connector.configuration.Configuration”,基本结构如下:
public class MyConfiguration extends Configuration { public MyConfiguration(ServletConfig servletConfig) { super(servletConfig); } @Override protected Configuration createConfigurationInstance() { return new MyConfiguration(this.servletConf); } }
然后,需要在 web.xml 中加入如下配置(假定上面的类全路径为com.ckfinder.connector.configuration.MyConfiguration):
<init-param> <param-name>configuration</param-name> <param-value>com.ckfinder.connector.configuration.MyConfiguration</param-value> </init-param>
完成了上面的步骤,我们就可以对 CKFinder 进行扩展了。
重写 init 方法
通过重写 init 方法,我们对 xml 文件中的所有配置进行更改。下面的例子展示了如何更改baseURL
及将 zip 类型的文件加入到 allowedExtensions 配置中。
@Override public void init() throws Exception { super.init(); this.baseURL = "/CKEditor_test/files/"; ResourceType resourceType = this.types.get("Files"); resourceType.setAllowedExtensions( resourceType.getAllowedExtensions().concat(",zip,7z")); }
重写 checkAuthentication 方法
CKFinder 建议通过重写 checkAuthentication 方法来控制用户操作权限,如下面的例子中,如果用户已经登陆,session 有名为“loggedIn
”的属性时,才允许用户具有 CKFinder 的操作权限:
@Override public boolean checkAuthentication(final HttpServletRequest request) { return request.getSession().getAttribute("loggedIn") != null; }
更多内容还是看 CKFinder 的使用手册吧 http://docs.cksource.com/CKFinder_2.x/Developers_Guide/Java
评论
不过后来发现了,,哈哈哈哈。。。 总结的不错,赞一个。。。。楼主,,继续加油。。。
发表评论
-
CKFinder2.x 入门
2011-07-08 16:04 6420CKFinder是一款强大的基于浏览器的ajax文件管 ... -
jxl 操作 Excel
2011-06-09 12:06 9763java 操作 Excel 最常用的就是JXL(jav ... -
CKEditor 3.6 入门二
2011-05-23 18:11 5531配置CKEditor ... -
CKEditor 3.6 入门
2011-05-20 11:28 8331有多种方法可以将CKEditor集成到你的页面中,下面是 ... -
JAVA6开发WebService (五)—— JAXB
2011-01-25 16:55 6992JAXB(Java API for XML Bindi ... -
多线程断点续传
2011-01-12 12:20 3789以前看过一个前辈写的断点续传的文章,记得当时没看懂,就 ... -
JAVA6开发WebService (四)——SAAJ调用WebService
2010-11-13 14:32 8621前面写了个JAX-WS的小例子,看到用JAVA6开发W ... -
JAVA6开发WebService (三)——几个概念
2010-11-11 17:00 18732要了解WebService,光能写 ... -
JAVA6开发WebService (二)——JAX-WS例子
2010-11-10 17:13 19786上一篇写了个最简单的小例子,只是为了说明JAVA6开发 ... -
JAVA6开发WebService (一)
2010-11-10 12:32 36077WebService ... -
InputStream、OutputStream、String的相互转换
2010-11-09 16:37 474651、字符串转inputStream String ... -
dom4j解析xml
2010-08-20 10:52 7322dom4j和jdom都是非常优秀的xml解析工具,但现 ... -
正则表达式
2010-05-17 16:39 1815先看一个用正则表达式校验Email的js方法 func ... -
Struts 1 和 Struts 2 的线程安全
2010-03-23 16:58 5733昨天人问我Struts 2是怎么保证全局变量的线程安全 ... -
oracle 字符串函数
2010-02-22 10:59 26331.LOWER 返回字符串的小写形式;select lower ... -
JAVA 集合类
2010-01-06 16:41 1310Collection├List│├LinkedLi ... -
JAVA 线程学习笔记--同步
2009-12-30 16:37 1572为了确保可以在线程之间以受控方式共享数据,Java 语言提供了 ... -
JAVA 线程学习笔记
2009-12-30 16:26 2932创建线程有两种方法。 ... -
JAVA调用系统命令或可执行程序
2009-09-03 15:33 69707通过 java.lang.Runtime 类可以方便的 ... -
FTP客户端(利用sun.net.ftp.FtpClient实现)
2009-07-30 15:35 25938昨天帮同事弄java上传文件到ftp服务器,用的sun ...
相关推荐
在网上找了半天,看见两偏整合教程不错,把两偏整理成一偏供参考。 别人一个文档就要10分才能下,本人分不多了,扣大家5分来赚取回来。...Ckeditor3.X与ckfinder2.X整合forJAVA (支持文件上传,解决中文乱码)
2. **自定义实现**:如果不想降级版本,可以考虑根据2.3版本的`FileUploadFilter`源代码自定义实现一个相似的功能类。这需要对CKFinder的API和工作原理有深入理解,同时也要关注可能存在的安全风险。 3. **第三方库...
.NET环境下ckeditor与ckfinder配置(附ckfinder1.x注册机)
CKFinder v1.x keygen
2. **文件和目录管理**:用户可以通过CKFinder轻松浏览、上传、下载、移动、复制、重命名或删除服务器上的文件和目录,提供了直观的用户界面。 3. **图像处理**:对于图片文件,CKFinder支持缩略图预览、调整大小、...
2. 图片预览与处理:对于图像文件,CKFinder支持即时预览,并且可以进行简单的编辑操作,如缩放、裁剪等。 3. 多种文件类型支持:除了常见的文本和图片文件,CKFinder还支持音频、视频和其他文档格式,如PDF和...
2)ckfinder-2.3.jar 3)ckfinderplugin-fileeditor-2.3.jar 4)ckfinderplugin-imageresize-2.3.jar 5)CKFinder-uuid-2.6.0.jar 6)thumbnailator-0.4.2.jar mavne安装到本地命令: mvn install:install-file -...
com.ckfinder.apache-ant-zip、com.ckfinder.ckfinder、com.ckfinder.ckfinderplugin-fileeditor、com.ckfinder.ckfinderplugin-imageresize
( CKFinder-2.6.2.1.jar ) ( CKFinder-2.6.2.1.jar ( CKFinder-2.6.2.1.jar ) v( CKFinder-2.6.2.1.jar )
2、修改ckeditor\config.js,加上如下内容: CKEDITOR.editorConfig = function( config ) { config.scayt_autoStartup = false config.language = 'zh-cn'; //中文 config.filebrowserBrowseUrl = '/ckeditor/...
CKFinder 2.6.2.1 破解 ...(2)解决了Demo版本文件夹之间无法移动文件的限制; (3)具体可以参考: http://mungo.space/2017/05/14/remove-ckfinder-copyright/ (4)仅供学习研究使用,不得用于商业用途
ckfinder.dll v2.3.1 for asp.net 破解版
CKFinder-2.3.1.jar
#### 二、ckeditor与ckfinder介绍 - **ckeditor**:一款非常流行的开源WYSIWYG富文本编辑器,支持多种格式和样式的编辑功能。 - **ckfinder**:一款文件管理器,主要用于文件上传和管理,能够很好地与ckeditor集成...
2. `ckfinder-2.3.pom`: 这是 CKFinder 的 pom 文件,其中包含了该库的元数据,如版本信息、依赖关系、插件配置等。如果你正在使用 Maven,你可以直接导入这个 pom 文件,Maven 将自动处理 CKFinder 的依赖关系,...
2. ckfinder-2.3.jar:这是CKFinder的主要核心库,包含了CKFinder的大部分功能实现,如文件操作、权限管理、目录结构管理等。2.3版本意味着它是该软件的稳定版,提供了对图像处理、文件预览等功能的支持。 3. ...
CKFinder 2.x则是与CKEditor配套的文件管理器,它允许用户在网页上浏览、上传、下载、删除服务器上的文件和文件夹。CKFinder支持多种文件类型,并且有良好的权限管理机制,确保了内容的安全性。与CKEditor集成后,...
ckfinder aspnet 版本2.2.2.1 ckeditor 版本3.6.4 项目自己引用 CKFinder.dll ckfinder放在ckeditor\plugins\ckfinder 下了
CKEditor和CKFinder是两个非常重要的Web开发工具,主要用于提高网站的内容编辑和管理效率。CKEditor是一款强大的富文本编辑器,而CKFinder则是一个文件管理器,两者常常一起使用,以提供用户友好的界面来上传、管理...