分类目录归档:我的生活

My First OpenGL Application (Using PyOpenGL)

这个应该是OpenGL的hello world了。

上计算机图形学的老师还花了两节课去给同学讲解怎么在windows安装配置opengl,以及怎么编写第一个opengl程序。其实,如果用Ubuntu+Python,只需要安装一个python-opengl就行了。

apt-get install python-opengl

然后编写以下几行代码运行:
继续阅读

写了一个Web Gateway做Proxy

因为EMSVPS的服务器实在有太多的问题,故现在改回比较稳定的burst.net机器。现在Paypal支持Unionpay的卡,5.95USD/mo大概人民币38元。burst.net的机器提供512M内存和2个IP地址,内存充足的时候跑起Wordpress的确轻松很多了。现在一个IP用作博客服务,另外一个IP用作提供一些Web服务。

因为不同的Web服务都需要监听一个服务端口,为了能让他们共用一个IP上的80端口,需要一个代理分发请求的程序。例如
访问http://lab.xiaoxia.org/server/*的请求分发到localhost:10000的服务,
访问http://lab.xiaoxia.org/whois/*的请求分发到localhost:10001的服务,
而访问http://lab.xiaoxia.org/*的请求,直接获取www目录下的资源文件,例如index.html。

因为使用的都是同一个域名,不同的只是路径,要根据不同的路径选择不同的服务端口,我使用了正则表达式来解决这个问题。

效果见 http://lab.xiaoxia.org/
继续阅读

这几天都在写Submission System

之前研究了一段时间ExtJS,在写一个FTP后台管理系统,可惜没有完成。最近写Submission System因为不是开源项目,所以前端开发没有使用支持GPL的ExtJS,使用了支持MIT的jQuery,以及下面这些东西:

一个小巧又美观的编辑器 cleditor
用来弹出modal window的jQuery DOMWindow
一个不错的表格插件 flexigrid

第一个编写的页面,有点丑,自己设置的样式,没有太花心机在这个上面。


继续阅读

Python小程序: ServerInformation

监听一个端口,提供HTTP接口,通过访问Web地址,调用程序获取各种信息。

例如,想在远程服务器上执行free命令查看远程服务器的内存使用情况,

free -m 的base64编码为 ZnJlZSAtbQ==,则访问下面的地址:

http://xiaoxia.org:10000/ZnJlZSAtbQ==

提交之后返回类似于下面的结果,

             total       used       free     shared    buffers     cached
Mem:           118        114          4          0          3         36
-/+ buffers/cache:         74         44
Swap:          255         56        199

为了安全使用,在CommandList文本文件里保存着一个命令列表,即可以允许调用的程序。

ps aux
free -m
netstat -na
cat /proc/meminfo
cat /proc/cpuinfo

继续阅读

均衡一下负载,把mysql移到了另外一个vps

博客的vps,因为运行太多的应用,包括mysql、php-cgi、webserver、ftpd、pptpd、fox3、smtpd等,物理内存使用早已经超过总内存128MB,swap也用了50多MB,所以出现了访问网页经常因为IO读写而卡一会儿的问题。

前几天,在EMSVPS上申请了一个35元的,跟我现在博客服务器用的配置基本相同的vps。就是这个价钱太小了,还是xen vps,让我担心会不会经常出问题,所以先用一段时间,目前用作负载均衡,分担了内存占用大,运行又慢的mysql服务器。

主服务器上的内存使用状况:

http://xiaoxia.org:10000/ZnJlZSAtbQ==

辅服务器上的内存使用状况:

http://xsign.org:10000/ZnJlZSAtbQ==

继续阅读

浅谈某些网页验证码以及绕过验证

平时上网纵观各式各样的验证码,能起到识别人为操作,避免机器人作用的不到半数。

此前,我已经写过一篇关于验证码识别的文章《无聊入门一下传说中的验证码识别技术》

很多很多验证码都是很水的。他们能起的作用是,

1. 加这个验证码是让查的人不那么急,流量不那么拥挤 (wf同学认为)

2. 加这个验证码的目的可能是让用户有机会停下来确认输入的数据是否正确 (44670同学)

 

案例一

首先,看看广东教育考试院首页的登录验证嘛,我到浏览器是firefox!

我擦,这是什么验证码,居然还分两行显示,教育部门都这么先进了吗?

继续阅读

Linux,Windows双系统休眠功能差点把NTFS上的文件弄丢了

笔记本上有两个操作系统,
1、Kubuntu 11.04
2、Windows7 64

本本上的win7除了用来剪辑视频和玩游戏以外基本上没有其他用途。系统安装上去之后只装了一个显卡驱动以及一些多媒体工具,没有网卡驱动,蓝牙驱动等,不能上网。
Kubuntu是最常使用的系统,每天都在用,上网、编程、多媒体影音、办公、图片处理等。

前几天启动过一次windows,无意在关机的时候错按了休眠。
昨天拍了一些视频素材,正好今天晚上又在kubuntu里关机的时候错选了休眠。

这下子两个系统都进入了休眠状态,刚想进入windows转换一下视频格式。从硬盘中恢复windows,打开文件夹后我就惊呆了,原来存放视频的10G文件夹竟然是空的!!!竟然是空的!!!
继续阅读