Custom Query (2296 matches)
Results (1 - 3 of 2296)
Ticket | Resolution | Summary | Owner | Reporter |
---|---|---|---|---|
#596 | fixed | Условие при логировании в syslog | ||
Description |
В документации access_log для syslog заявлена возможность использовать условие. Указываю в конфиге: access_log syslog:server=unix:/var/run/log,facility=local5 main if=$loggable; Получаю ошибку: nginx: [emerg] parameter "if=$loggable" is not supported by syslog Насколько я понял по коду ngx_http_log_handler, конфликтов у filter с syslog быть не должно. В качестве быстрого патча сделал исключение для "if=" и ещё один goto: --- src/http/modules/ngx_http_log_module.c.orig 2014-07-08 16:22:39.000000000 +0300 +++ src/http/modules/ngx_http_log_module.c 2014-07-28 15:09:29.621933289 +0300 @@ -1256,6 +1256,23 @@ process_formats: if (log->syslog_peer != NULL) { if (cf->args->nelts > 3) { + if (cf->args->nelts == 4) { + if (ngx_strncmp(value[3].data, "if=", 3) == 0) { + filter.len = value[3].len - 3; + filter.data = value[3].data + 3; + goto process_filter; + } else { + ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, + "parameter \"%V\" is not supported by syslog", + &value[3]); + return NGX_CONF_ERROR; + } + } else { + ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, + "parameter \"%V\" is not supported by syslog", + &value[4]); + return NGX_CONF_ERROR; + } ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, "parameter \"%V\" is not supported by syslog", &value[3]); @@ -1410,6 +1427,8 @@ process_formats: log->file->data = buffer; } +process_filter: + if (filter.len) { log->filter = ngx_palloc(cf->pool, sizeof(ngx_http_complex_value_t)); if (log->filter == NULL) { |
|||
#81 | invalid | Тест -f (rewrite) | ||
Description |
Доброго времени. Баг или фича, то что -f делает stat() и не отличает обычный файл от линков, может быть нужен lstat() ? По крайней мере, согласно документации, -f должен быть true только на обычных файлах. |
|||
#102 | invalid | Странности с If-Modified-Since | ||
Description |
Конфигурация следующая: if_modified_since before, используется кэширование проксированных ответов. Запрашивается определенный файл, кэшируется ответ с Last-Modified: Fri, 15 Jul 2011 16:52:30 GMT Далее, спрашиваем файл с разными If-Modified-Since, результаты ниже (запрос-ответ): If-Modified-Since: Sat, 11 Feb 2012 10:18:15 GMT -- HTTP/1.1 304 Not Modified If-Modified-Since: Fri, 10 Feb 2012 10:19:26 GMT -- HTTP/1.1 304 Not Modified If-Modified-Since: Thu, 9 Feb 2012 10:19:44 GMT -- HTTP/1.1 200 OK If-Modified-Since: Wed, 11 Jan 2012 10:20:06 GMT -- HTTP/1.1 304 Not Modified Не совсем понятно, почему третий результат - 200, когда все они, вплоть до Last-Modified должны быть 304. |