I2P 是一个匿名网络项目,它提供了一个简单的网络层供对身份敏感的程序进行安全的匿名通讯。I2P 网络是动态的分布式网络,它在设计上并不信任网络中的任何一方,其中的所有数据都经过多层加密。
简单的说I2P和Tor一样都可以作为梯子。相比Tor,I2P不需要中央服务器,属于分布式的匿名网络,更难被封杀。下面介绍如何在MacOS X下将I2P配置成本地的HTTP Proxy服务。
继续阅读 →I2P 是一个匿名网络项目,它提供了一个简单的网络层供对身份敏感的程序进行安全的匿名通讯。I2P 网络是动态的分布式网络,它在设计上并不信任网络中的任何一方,其中的所有数据都经过多层加密。
简单的说I2P和Tor一样都可以作为梯子。相比Tor,I2P不需要中央服务器,属于分布式的匿名网络,更难被封杀。下面介绍如何在MacOS X下将I2P配置成本地的HTTP Proxy服务。
继续阅读 →ImageMagick和GraphicsMagick是两款强大的跨平台图片命令行工具,据说GraphicsMagick是从ImageMagick分支出来的,更稳定些.
Java平台图片处理包im4java使用JNI的方式封装了ImageMagick.NodeJs平台图片处理模块gm只需要GraphicsMagick和ImageMagick任选一种安装就好了.
继续阅读 →中文文件名在不同的平台下常常会出现乱码问题.除了理清编码关系,正确的编解码外,比较简单的办法就是把中文去掉或者不用中文.
最近在做一个文件上传相关的功能,windows下的中文文件传到linux服务器上变成一串乱码文件名.于是想把文件名里的中文字符转换成拼音字母,这样相比直接使用UUID之类的做法,保留了部分语意.
继续阅读 →对于一个给定的前景色,如何找到一个与之色差较大的背景色,使之醒目?
对颜色值取反,比较简单的方法:0xFFFFFF - $color
coffeescript
// coffeescript
invert = (color) ->
"#" + ("000000" + (0xFFFFFF ^ parseInt(color.substring(1),16)).toString(16)).slice(-6);
但是当$color = 0x808080
时,$color ≈ 0xFFFFFF - $color
前景色和背景色非常接近,显然取反的方法有瑕疵。
在HTTP中,基本认证是一种用来允许Web浏览器,或其他客户端程序在请求时提供以用户名和口令形式的凭证。 通常我们通过浏览器去访问一个SVN代码库,浏览器会弹出一个窗口,要求输入用户名和密码。一般SVN的的Web服务端采用Apache服务器,因为Apache实现了WebDAV协议,支持HTTP协议管理SVN库。Apache里HTTP基本认证的功能是通过mod_auth_basic模块实现的。
继续阅读 →表单的输入校验通常会使用onBlur
事件,这个事件有个问题,若填完最后一个输入框时,直接点击“提交”按钮,那最后一个输入框的onBlur
事件不会触发,导致校验不会执行。这种场景下,语意最贴切的就是onChange
事件了,但是onChange
事件在onBlur
事件之后触发,所有只能用onKeyup
或者onKeyPress
方法来感知输入框的变化。但是如果在输入时浏览器提供自动补全的功能,那onKeyup
和onKeyPress
事件不会被触发。
一直在做web开发,对HTTP协议还算熟悉,但是这本手册类的砖头书还是很吸引我,看了两章觉得还不错,对于巩固基础很有帮助,最近感觉记性不如从前,烂笔头越来越重要了。
媒体类型MIME
(Multipurpose Internet Mail Extension)最初设计是为了解决不同的电子邮件系统之间搬移报文时存在的问题。
linux下部署的jetty,隔大哥一周时间就会访问出错,或者出现web应用的目录列表。很长一段时间都被这个问题困扰着,由于是个演示系统,持续运行的要求不高,无奈配置了一个cron,定时重启。
最近发现原来linux下有一个叫做tmpwatch
的命令,而且默认配置成了cron.daily
。每日执行一次。