Wednesday, June 23, 2010

ngx_lua 终于好了

终于。

无敌的晓哲和春哥,你们太强大了。
ngx_lua 在两位大侠的手里搞定了。
示例如下,看看他强大的威力吧。

location /lua {
    content_by_lua '
        local num = tonumber(ngx.var.arg_num) or 0;
        ngx.echo("num is: ", num, "\\n");

        if (num > 0) then
            res = ngx.location.capture("/lua?num="..tostring(num - 1));
            ngx.echo("status=", res.status, " ");
            ngx.echo("body=", res.body, "\\n");
        else
            ngx.echo("end");
        end 
        ';  
}

$ curl -i localhost/lua?num=5
HTTP/1.1 200 OK
Server: nginx/0.8.40
Date: Wed, 23 Jun 2010 15:28:27 GMT
Content-Type: application/octet-stream
Transfer-Encoding: chunked
Connection: keep-alive

0? is: 5
status=200 body=num is: 4
status=200 body=num is: 3
status=200 body=num is: 2
status=200 body=num is: 1
status=200 body=num is: 0
end



强大吧。
可以计算 阶乘了。
呵呵。