Surprised => indulgence => Calm => Lost => Panic =>Calm

【笔记】深入理解Nginx-worker-07-4.2.1-分配用于保存配置参数的数据结构

Nginx imekaku 758℃ 0评论

分配用于保存配置参数的数据结构

为什么要这么严格地用一个结构体来存储配置项的参数值,而不是随意地定义几个全局变量来存储它们呢?这就要回到4.1节中例子的使用场景了,多个location块(或者http块、server块)中的相同配置项是允许同时生效的,也就是说,我们刚刚定义的ngx_http_mytest_conf_t结构必须在Nginx的内存中保存许多份。事实上,HTTP框架在解析nginx.conf文件时只要遇到http{}、server{}或者location{}配置块就会立刻分配一个新的ngx_http_mytest_conf_t结构体。因此,HTTP模块感兴趣的配置项需要统一地使用一个struct结构体来保存(否则HTTP框架无法管理),如果nginx.conf文件中在http{}下有多个server{}或者location{},那么这个struct结构体在Nginx进程中就会存在多份实例。

转载请注明:Imekaku-Blog » 【笔记】深入理解Nginx-worker-07-4.2.1-分配用于保存配置参数的数据结构

喜欢 (0)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址