BLOG
Enjoy when you can, and endure when you must.
MAY 17, 2013/Python
APScheduler —— Python化的Cron
APScheduler全程为Advanced Python Scheduler,是一款轻量级的Python任务调度框架。它允许你像Cron那样安排定期执行的任务,并且支持Python函数或任意可调用的对象。安装APScheduler可以使用pip工具安装:pip install apscheduler或在Pypi上下载最新的源码包(https://pypi.python.org/pypi/APScheduler/)进行安装:python setup.py install简单的应用(翻译自官方文档)以默认配置启动Schedulerfrom apscheduler.schedule...
MAY 13, 2013/HTML
一条注释引发的“血案”
今天在调试页面的时候出现一个很奇怪的现象:所有的页面只在IE下显示非常奇怪,但检查CSS又并未发现严重的兼容性问题。正百思不得其解时,同事将置于HTML代码最上面的注释删除后,一切恢复正常。于是想到了一个东西 —— 文档类型。虽然在之前也了解过不少文档类型这方面的东西,但因为之前自己并未尝试过在文档类型申明之前加入任何东西,故一时半会儿没醒悟过来。文档类型作为一个决定浏览器对于HTML文档采取何种模式的“开关”,应出现在HTML文档的最前面。但有时候出于某些原因,有的作者会在 其之前放置一些内容如注释,从而让浏览器感到极为“困惑”,它第一眼看到的不是文档类型的申明,故可能会认为页面没有文...
MAY 06, 2013/关注生活
骑行:三岔湖
周末,在同学的怂恿下,决定骑行简阳三岔湖,第一次体验100多公里的骑行。虽然整体来说不算太累,只是PP有点罢工了= = 四川简阳三岔湖又名三岔水库,国家AA级风景区,属大(二)型水库,位于沱江一级支流绛溪河上游的简阳市三岔镇,于1975年3月动工修建,1977年2月完成现有规模。     由此,本次骑行的路线是: 双流 --> 新会展中心 --> 麓山大道 --> 双简快速通道 --> 三岔湖 双简快速通道,买枇杷解渴ing...         这屌丝到哪都在拍....
APR 29, 2013/Django
Django 数据库访问性能优化
本文主体内容为转载(查看来源),外加一些自己的学习与理解对其内容进行了少量补充。1. 使用标准的数据库优化技术:在进行Django数据库访问性能优化之前,首先应该使用标准的数据库技术对其进行优化,比如给字段加索引,通过使用 django.db.models.Field.db_index 来给一个Django模型类的字段加索引,设置这个属性字段的Field.db_index=True。注:django对model中的fk和unique = True的字段将自动创建索引。2. 理解Django中QuerySet的工作机制对数据库访问优化至关重要:QuerySet是懒加载的,它只有在需要的时候...
Redis安装出错解决
今天在CentOS5上安装Redis2.6时遇到如下问题: /root/redis-2.6.4/src/zmalloc.c:223: undefined reference to `__sync_add_and_fetch_4' collect2: ld returned 1 exit status make[1]: *** [redis-server] Error 1 make[1]: Leaving directory&...
APR 25, 2013/Django
在Django中要求https连接
在对安全较高的网站中,我们要求连接必须使用ssl加密,除了在如nginx这样的HTTP服务器中做相关配置以外,可能还会涉及在Django中做安全连接的要求,即将用户的http连接重定向到https。有以下一些方法可以满足相关需求:一、中间件的使用:在Django中很容易编写自定义中间件以在请求到达视图之前被调用。下面是一个中间件的示例,其可以检测一个请求是否要求安全的连接,如果需要则进行重定向操作:from django.conf import settings    class SecureRequiredMiddlewa...
APR 25, 2013/Django
在include()上包装login_required()
在url.py里,我们可以利用include()包含其他的url.py进来,但这样默认不支持使用login_required再次包装,如下所示的代码:     ...     (r'^blog/', login_required(include('blog.urls'))), )会抛出异常。以下是一种解决方案(参考自StackOverflow):     '''   &nbs...
OpenSSL做证书格式转换
今天在StartSSL上申请了几个证书,得到.key以及.crt文件,但在使用时还需利用openssl对其进行转换,在此做个记录。 1.x509转换为pfx: openssl pkcs12 -export -out cacert.pfx -inkey cakey.key -in cacert.crt 2.x509转换为pem: openssl rsa -in cakey.key -out key.pem -outform PEM 3.x509转换为PKCS#12: o...
利用FreeRadius实现OpenVPN的验证
本文翻译自:Setup FreeRADIUS Plugin and OpenVPN Source on Centos 5 + Ubuntu 10 + 一、安装必须的软件包: yum install libgcrypt libgcrypt-devel gcc-c++ #On Ubuntu we run: apt-get install libgcrypt11 libgcrypt11-dev gcc make build-essential 下载Radius Plugin: wget http://www.nongnu.org/ra...
CentOS安装OpenVPN
本文翻译自:Installing OpenVPN on CentOS 5 and CentOS 6 本教程将引导你在CengOS上部署OpenVPN服务器。 一、准备工作: 检测tun/tap是否激活: cat /dev/net/tun 如果以激活,将会返回如下信息: cat: /dev/net/tun: File descriptor in bad state 安装必须的软件包: yum install gcc make rpm-build autoconf.noarch z...