Существует два способа заказа модулей в nginx.
При добавлении обработчика модуля он добавляется к phase .
ngx_http_handler_pt *h = ngx_array_push(&cmcf->phases[NGX_HTTP_CONTENT_PHASE].handlers);
if(h == NULL)
{
return NGX_ERROR;
}
*h = ngx_dcs_handler;
.Например, мы видим, что модуль добавляется в NGX_HTTP_CONTENT_PHASE
.Я думаю, что auth_request
добавляется на другой более ранней фазе?
Единственный другой способ - это перекомпилировать в правильном порядке.Первый модуль, который запускается, является последним в командной строке configure
.
configure ... --add-module=C --add-module=B --add-module=A
В этом случае сначала запускается модуль A, затем B и, наконец, C.
I'mне уверен, могут ли основные модули быть легко переупорядочены.