9.冲突配置的指令以谁为准

1.查看指令的上下文
例:log模块的指令有两个,log_format  和 access_log
    log_format  
        上下文是: http ,如果在其他的模块会造成编译不通过,无法启动
    access_log
       上下文是:http , server , location , if in location , limit_except

指令的所属上下文正确,才能正常的启动执行

2.指令的合并

概念:指令分为两种:值指令(存储配置项的值) 和 动作类指令 (指定行为)

只有值指令能被合并
注:子指令向上覆盖,当存在子配置指令时,覆盖父配置指令,不存在子配置指令时,直接使用父配置指令

3.HTTP模块合并配置的实现
  1. 指令在哪个块下生效
  2. 指令允许出现在哪些块下
  3. server块下生效,从httpserver合并指令- merge_srv_conf
  4. 配置缓存在内存 merge_loc_conf

你可能感兴趣的:(9.冲突配置的指令以谁为准)