大象笔记
如何管理程序的配置
> 我的生活经验使我深信,没有缺点的人往往优点也很少。
- 林肯
## 错综复杂的配置参数
通常习惯把程序的配置参数独立到一个 setting 的文件。在个人项目及小规模项目中,足矣。
但是接入了正规的研发流程之后,单单一个
RESTful/CRUD api
> Keep it simple, stupid.
-- K.I.S.S
## RESTful 与 CRUD 区别是什么
* CRUD 定义了四个基本的数据操作:CREATE, READ, UPDATE, DELETE
*
zend
不得不说,PHP Zend 是第一个让我有阅读障碍的 web 框架。
- 过于灵活的模板机制,让烂代码肆意滋生
- 隐蔽的 router 机制, 必须查文档才能理解
## 获取当前 Zend 版本
新建一个测试文件,ve
如何限制恶意用户刷站 - Nginx 限速规则
## 真实案例
收到短信报警,调用一些三方 API 接口超时。从 Nginx 看,发现是一个调用三方 API 接口被刷。
短时间内超过了百万次。不可避免的影响了正常业务。
## 刷站请求特征
- 短时间内,单 IP 针对单
Nginx user 配置引发的血案
在折腾完了 gulp livereload web server 之后,我才发现其实 Nginx 才是最靠谱的 web 调试服务。
毕竟写伪接口用 Nginx 要方便的多,也不用考虑 node 模块的一堆奇葩依赖。
但是 Nginx
Nginx 日志解析,及 IP 请求量排名统计
经常遇到服务器被恶意扫描,或者爬取内容的情况,这时候就可以通过统计 Nginx 日志来分析 IP 的来源。
## Nginx 日志默认的格式
一条日志
> 192.34.61.118 - - [15/Jan/2015:16:0
使用 Nginx 限制页面访问权限
写了一个小 web 应用,需要后台提交数据,但是这个页面只允许我一个人访问。
单独为这个页面增加用户权限系统,有点杀鸡用牛刀的感觉。还好用 Nginx 可以轻松搞定这件事。
## htpasswd
htpasswd is us
nginx
## 参考
* [Nginx开发从入门到精通](http://tengine.taobao.org/book/index.html)
## uwsgi timeout
nginx 的配置更新:
uwsgi_read_t
Django 的权限管理 (login, logout)
## Django 的在线文档太卡了
在 Mac 上使用 Dash 将 Django 文档都缓存到本地就方便多了,可以节省大量的等待时间。
## user 表的结构
```
CREATE TABLE "auth_user"
django ORM
## ORM
一直不喜欢用 ORM 做复杂关系,原因是不了解 ORM 对应的数据库表结构。
以及新建 Model 对象时,一些复杂属性如何初始化。
## ForeignKey
在 SQLite 中,Foreign Key 对