Mercurial > hg > nginx
diff src/http/ngx_http_core_module.c @ 1919:dc0f5013f674
create dummy resolver in http context to inherit it in all servers
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Thu, 06 Mar 2008 08:48:55 +0000 |
parents | 91879041b681 |
children | c72fe0a8d9b4 |
line wrap: on
line diff
--- a/src/http/ngx_http_core_module.c +++ b/src/http/ngx_http_core_module.c @@ -2908,14 +2908,21 @@ ngx_http_core_merge_loc_conf(ngx_conf_t prev->resolver_timeout, 30000); if (conf->resolver == NULL) { - conf->resolver = prev->resolver; - - if (conf->resolver == NULL) { - conf->resolver = ngx_resolver_create(cf, NULL); - if (conf->resolver == NULL) { + + if (prev->resolver == NULL) { + + /* + * create dummy resolver in http {} context + * to inherit it in all servers + */ + + prev->resolver = ngx_resolver_create(cf, NULL); + if (prev->resolver == NULL) { return NGX_CONF_ERROR; } } + + conf->resolver = prev->resolver; } ngx_conf_merge_path_value(conf->client_body_temp_path, @@ -3717,6 +3724,10 @@ ngx_http_core_resolver(ngx_conf_t *cf, n ngx_url_t u; ngx_str_t *value; + if (clcf->resolver) { + return "is duplicate"; + } + value = cf->args->elts; ngx_memzero(&u, sizeof(ngx_url_t));