http://nginx.org/en/docs/syntax.html上关于“配置文件测量单位”的 nginx 文档说:
可以以字节、千字节(后缀 k 和 K)或兆字节(后缀 m 和 M)为单位指定大小
这个不清楚,因为千字节官方定义为1000字节,兆字节官方定义为1000000字节,但经常被用来分别表示1024字节和1024*1024字节。nginx 配置文件中使用了多少千字节?当文档说默认1m
是那个1000000
或1048576
?
Old*_*Pro 15
查看http://hg.nginx.org/nginx/file/15056a29841a/src/core/ngx_parse.c上的源代码(这是 1.5.6 中 ngx_parse.c 的版本,但功能在0.3.53版本,你可以在这里查看当前版本),出现k或K代表1024字节,即kibibytes(KiB),m或M代表mebibytes(MiB),即1024 KiB。
ssize_t
ngx_parse_size(ngx_str_t *line)
{
u_char unit;
size_t len;
ssize_t size;
ngx_int_t scale;
len = line->len;
unit = line->data[len - 1];
switch (unit) {
case 'K':
case 'k':
len--;
scale = 1024;
break;
case 'M':
case 'm':
len--;
scale = 1024 * 1024;
break;
default:
scale = 1;
}
size = ngx_atosz(line->data, len);
if (size == NGX_ERROR) {
return NGX_ERROR;
}
size *= scale;
return size;
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1612 次 |
最近记录: |