lion

我一直以为悲伤是一种美丽,一种壮丽,这世界让我如此失望,我经不起这风吹雨打的折磨,我寻找的是悲惨的结局,我追寻的是哭里的笑声,默默地完成生命的剩余……如果有来生,我不会选择以悲伤为开始,我会选择以美丽为结局......
随笔 - 30, 文章 - 9, 评论 - 553, 引用 - 7
数据加载中……

2006年2月27日

如何利用客户端缓存对网站进行优化?

     摘要: 很多人首先会想从服务器缓存方面着手对程序进行优化,许多不同的服务器缓存方式都有他们自己的特点,像我曾经参与的一些项目中,根据缓存的命中率不同使用过 Com+/Enterprise Libiary Caching/Windows服务,静态文件等方式的服务器端缓存和 HTTP Compression技术,但客户端缓存往往却被人们忽略了,即使服务器的缓存让你的页面访问起来非常地快,但她依然需要依赖浏览器下载并输出,而当你加入客户端缓存时,会给你带来非常多的好处.因为她可以对站点中访问最频繁的页进行缓存充分地提高 Web 服务器的吞吐量(通常以每秒的请求数计算)以提升应用程序性能和可伸缩性。  阅读全文

posted @ 2007-09-24 23:41 Lion 阅读(3171) | 评论 (28)编辑

如何解析被压缩过的Js文件?eval(function(p,a,c,k,e,d){.....,{}))

随着ajax的流行,大家一下子明白过来,原来js能够完成这么强大的功能,然后就是JS代码原来越复杂,js文件体积越来越大,同样也增加了安全隐患。

现在网上比较普遍的流行一些代码混淆和代码压缩工具:

JSConfusion    代码混淆工具,本人做的Big Smile

Javascript compressor  代码压缩工具,提供了一种特有的压缩算法对JS的代码进行减肥,也是我看到较早的一个工具,现在经常和JSConfusion结合去使用(当然是先混淆后压缩)

JSObfuscator  集混淆/压缩一体的工具,虽然功能比较多,但在压缩的时候效果不是很好,经过我测试会有时压缩过的代码不能运行

这些是见过的比较好的几个工具,如果你还见过哪些不错功能类似的工具,可以在后面补充~~~~ 

大家应该都知道这样一个理论:加密可以反加密,而混淆却无法反混淆.

混 淆也可以叫颠倒是非、混淆黑白,无非就是去掉缩进、空格、空行和注释,改表代码中的非保留字为简单的字母、符号、乱码什么的,这样做只是为了加大代码的阅 读难度,提高阅读成本,所以反混淆只有根据你对JS的了解程度去进行变量/方法/属性/类的替换。当然代码少你到是可以这样做,如果代码很多(可以看这个 混淆后的项目),你就会知道什么叫 "生气、愤怒、疯狂、哭笑不得"

上面为基础知识,下面进行正题:

alert("Welcome idoall.org");

被压缩过以后是下面的样子:

eval(function(p,a,c,k,e,d){e=function(c){return c};if(!''.replace(/^/,String)){while(c--)d[ c]=k[ c]||c;k=[function(e){return d[  e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[ c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[ c]);return p}('3("2 1.0");',4,4,'org|idoall|Welcome|alert'.split('|'),0,{}))

那么我们如何从压缩过的代码中提取出原文?

不管她会压缩混淆成什么样子,最终都是要被浏览器认可,解析,执行的。我们可以跟踪代码的运行,会发现最关键的位置在这里.....p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),kCoffee);return p

这里的变量 p 就是用来保存最终后的代码,我们可以在返回 p 的前面将值输出,就会得到alert("Welcome idoall.org");

本文的目的是回答一位网友的问题,顺便提供相关的思路,有助于大家的思考

posted @ 2007-09-12 18:41 Lion 阅读(3086) | 评论 (10)编辑

Web在线编辑器WebHtmlEditor 1.7.2006.0420 Release提供下载,免费试用

     摘要: 为什么要使用WebHtmlEditor,因为她除了具有前台的调用功能外,还具有很强的后台管理功能,能够对编辑器多种功能进行各种有效的自定义,具体如下:
WebHtmlEditor 1.7 主要新增加以下功能:


增加了远程上传图片功能,将其他网站上的图片粘贴到编辑器中,点击远程上传按钮,可以将图片上传到本地的文件夹中,并在图片上增加文字水印和图片水印。
增加了 UpLoadImagesAndInsert 属性,在上传图片时可以直接将上传的图片插入到编辑器的内容区域中。
增加了首行缩进距离设置,体现了编辑器中国本地化的特色。段落首行缩进二字是中文的普遍习惯,国外的网页编辑软件一般都不提供此功能。
增加了 HorizontalAlign 属性,可以设置编辑器的水平对齐方式。
对[ 图片 | Flash | 多媒体 | 其他文件 | 模板文件 ]增加了 UpLoad[ Images | Flash | Media | OtherFile | Templat ]NameSet 属性,在上传遇到同名文件时可以自定义命名或提  阅读全文

posted @ 2006-10-30 09:27 Lion 阅读(2949) | 评论 (21)编辑

应朋友要求,现将 WebHtmlEditor 1.5 and 1.6 中用到的 js 混淆器提供给大家使用

这个混淆器只会放一段时间
http://editor.lionsky.net/JSConfusionWebDemo/

相关链接:
Web在线编辑器WebHtmlEditor 1.6 Release提供下载(Support .NET Framework v2.0,Support .NET Framework v1.1)

posted @ 2006-02-27 09:20 Lion 阅读(2380) | 评论 (16)编辑