Здравствуйте.<br><br>Написал простенький handler, но почему-то не получается писать из него логи с помощью ngx_log_error. nginx запускается с директивой "daemon off"; в других местах (например в ngx_http_test_merge_loc_conf) ngx_log_error работает как надо.<br>
<br>Делал так. Когда встречается директива "mytest":<br><br>static ngx_command_t ngx_http_test_commands[] = {<br> // Install http-handler <br>
{ ngx_string("mytest"),<br> NGX_HTTP_MAIN_CONF|NGX_CONF_NOARGS,<br> ngx_http_test_install_handler, // <<---------------------------------<br> NGX_HTTP_LOC_CONF_OFFSET,<br> 0,<br> NULL },<br>
// ...<br> ngx_null_command<br>}<br><br>Запускается установщик обработчика:<br><br>static char* ngx_http_test_install_handler(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)<br>{<br> ngx_http_core_loc_conf_t* clcf = static_cast<ngx_http_core_loc_conf_t*>(ngx_http_conf_get_module_loc_conf(cf, ngx_http_core_module));<br>
clcf->handler = ngx_http_test_handler;<br><br> return NGX_CONF_OK;<br>}<br><br>Сам же обработчик выгладит очень просто:<br><br>static ngx_int_t ngx_http_test_handler(ngx_http_request_t *r)<br>{<br> ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, "test"); // Это сообщение никогда не отображается<br>
return NGX_OK;<br>}<br><br>Я где-то ошибся? Пробовал устанавливать обработчик через ngx_http_test_init - не помогло.<br><br>--<br>С уважением,<br>Сергей Самохин.<br>