Nginx + fastCGI + php5-fpm (Ubuntu 10.04)
参考1: http://wiki.mediatemple.net/w/(ve):Install_PHP-FPM_on_Ubuntu_10.04
参考2: http://wiki.nginx.org/HttpCoreModule#try_files
年前的大事基本都办了, 我又有时间折腾了. :)
一直听说用 nginx + fastCGI + php5-fpm 方法跑 PHP 是相当快的. 于是我来试试. 自己的经济舱级别的 VPS 只支持 Ubuntu Server 10.04, php5-fpm 还不在软件源当中. 好在 PPA 源中已经有了.
前提: 如果还不能用 PPA, 先要:
$sudo apt-get install python-software-properties
然后添加 php5-fpm 的 PPA:
$sudo add-apt-repository ppa:brianmercer/php
假设只缺少 php5-fpm, 其它 nginx, php5, mysql 什么的都有了, 那就...
$sudo apt-get install php5-fpm
然后用缺省设置启动 php5-fpm:
$sudo update-rc.d enable php5-fpm
$sudo invoke-rc.d php5-fpm start
下一步是让 nginx 把 php 请求转发给 php5-fpm, 缺省监听端口是9000. 我的 nginx 配置样本(只是从 server 开始):
server{
listen 80;
server_name your.domain.name;
client_max_body_size 2M;
root /path/to/your/site;
expires 14d;
index index.html index.htm index.php
gzip on;
gzip_comp_level 3;
gzip_types text/plain text/html text/css image/png application/json application/x-javascript text/xml application/xml+rss;
gzip_vary on;
gzip_buffers 16 8k;
location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param APPLICATION_ENV production;
include /path/to/your/fcgi.conf;
expires off;
}
}
下面是 fcgi.conf 样本:
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx;fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;# PHP only, required if PHP was built with –enable-force-cgi-redirect
fastcgi_param REDIRECT_STATUS 200;
比较 /etc/nginx/fastcgi_params, 貌似这个 fcgi.conf 只是增加了 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 一行. 不过我还是喜欢做个完整的 conf 再说
最后重启 nginx 服务试试吧, 是不是比以前快些呢? 我之前是用 nginx + apache2 + mod_php 的, 改善是明显的.
笑笑三岁十个月
首先, 她学会了讨价还价. 比如一天下午, 笑笑想去找奶奶玩但被我拒绝了, 因为奶奶在午睡呢. 要是之前, 那笑笑没准就热泪盈眶了. 但这回笑笑说, 那我去看看奶奶可以吗? 我只好说, 可以. 去朋友家作客, 笑笑看中了毛茸茸的玩偶, 想要拿来玩但又被我拒绝了. 我说, 你问叔叔可以玩吗? 笑笑明显不高兴了, 然后问, 那摸摸可以吗?
笑笑的奶奶是个爱学习有进步的老太太
刚过来的时候, 一点不奇怪的她表现出对孙女的溺爱. 例如笑笑在吃饭的时候边吃边玩被我训斥了, 笑笑奶奶就立刻对我进行训斥: 吃饭时不能训孩子! 出去玩的时候, 笑笑一说饿了(其实是馋了), 笑笑奶奶就让我们给找零食吃. 等等...
后来我不得不开展对话, 并就下列内容达成一致: 首先不能在我们教育(含教训)笑笑时立刻表示反对, 因为这样笑笑小朋友会感到困惑, 并且可能对自身行为作出错误的判断. 另外不能一味的为笑笑开脱, 因为笑笑小朋友可不是白给的, 只要奶奶说一句"孩子是不是累了?", 笑笑就会大呼着"爸爸我累了, 抱抱"跑过来.
现在笑笑奶奶已经能在很多情况下理性的面对笑笑的撒娇攻势了. 难怪我这么死理性呢
一天晚上, 笑笑吃了一份海苔之后还要吃. 我于是趁机进行了一个实验. 我把剩下的海苔(6袋)都交给笑笑, 说, 海苔都在这里了, 你自己管理吧, 今天都吃了也可以但明天就没有了. 然后我就离开现场. 过来一会儿, 笑笑跑来说整理好了. 我一看, 6袋都在呢, 笑笑把6袋都留给未来了
小朋友们之间也少不了恩仇. 一次我邀请芊芊小朋友来家里玩(其实是找她爸爸谈事情), 芊芊不愿意, 坚持要去皮皮家玩, 并且用哭闹对付我们. 芊芊的爸爸也没有了办法. 我看了看笑笑. 笑笑说, 不要芊芊来我家了. 我问, 怎么了? 笑笑说, 她太闹了. 之后某天, 芊芊终于被笑笑的iPad引诱, 来我们家玩. 临走时, 我让笑笑起来送客. 但笑笑玩的正起劲, 百般不情愿. 芊芊一看机不可失, 说, 笑笑你太不听话了.
笔记: 理财 In English
也许国外银行职员的服务态度会好些, 但用到的词汇基本与中文是一一对应的.
基本概念:
- 理财: financing
- 钱: money
- 现钞: cash
- 资产: asset
- 债务: liability
- 借: debit
- 贷: credit #借/贷就是一切交易的核心, 看来世界通用
- 收入: income
- 花销: expense
银行里可能用到的:
- 账单: bill
- 支票: check
- 活期存款: demand deposit
- 定期存款(某人常说'死期存款'): time deposit or term deposit
- 借记卡: debit card #从银行的角度, 你把钱借给了它, 对吗?
- 信用卡: credit card
- 明细: bank statement
- 结余: balance
- 汇款: remittance
- 债券: bond #原来007的名字是詹姆斯.债券...
- 提款机: ATM, automatic teller machine
- 持有人: holder
- 利息: interest
- 贷款: load
- 对账: reconcilation
最好用不到的:
- 讨债人: debt collector
- 破产: bankrupt




