<div dir="ltr"><div><div><div><div><div>Hi John,<br><br></div>no, you don't have to change any code on nginx core, if this was your doubt.<br><br></div>You have to create your own module, (take a look on this page as a guide, <a href="http://www.evanmiller.org/nginx-modules-guide.html">http://www.evanmiller.org/nginx-modules-guide.html</a>).<br>

On the "handler installation" part, instead of doing what the guide said, replace by the code I sent.<br></div>On this code you are registering more one handler at access phase (pushing more one position on the array "h = ngx_array_push")<br>

</div>and telling that this handler will be the function you have developed.<br><br></div><div>With that, nginx will execute any access handler configured by other modules including yours, and than execute the final handler.<br>

<br></div><div>Regards,<br></div><div>Wandenberg<br></div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Aug 13, 2013 at 9:04 PM, Myla John-B22173 <span dir="ltr"><<a href="mailto:B22173@freescale.com" target="_blank">B22173@freescale.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div link="blue" vlink="purple" lang="EN-US">
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Hi
</span><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">Wandenberg Peixoto,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">I appreciate your response.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">I have a simple follow-up question. I have looked at the function ngx_http_access_handler and it is checking for access privileges.<u></u><u></u></span></p>


<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">Do you suggest to over write this functionality or add my code here (before exiting the function calling my routine)?<u></u><u></u></span></p>


<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">Regards,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">John</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u><u></u></span></p>


<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<div style="border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> <a href="mailto:nginx-devel-bounces@nginx.org" target="_blank">nginx-devel-bounces@nginx.org</a> [mailto:<a href="mailto:nginx-devel-bounces@nginx.org" target="_blank">nginx-devel-bounces@nginx.org</a>]
<b>On Behalf Of </b>Wandenberg Peixoto<br>
<b>Sent:</b> Tuesday, August 13, 2013 7:51 AM<br>
<b>To:</b> <a href="mailto:nginx-devel@nginx.org" target="_blank">nginx-devel@nginx.org</a><br>
<b>Subject:</b> Re: Handlers<u></u><u></u></span></p>
</div><div><div class="h5">
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">You can use an accept handler to do that.<br>
something like that<br>
<br>
ngx_http_handler_pt        *h;<br>
ngx_http_core_main_conf_t  *cmcf;<br>
<br>
cmcf = ngx_http_conf_get_module_main_conf(cf, ngx_http_core_module);<br>
<br>
h = ngx_array_push(&cmcf->phases[NGX_HTTP_ACCESS_PHASE].handlers);<br>
if (h == NULL) {<br>
    return NGX_ERROR;<br>
}<br>
<br>
*h = your_handler_function;<u></u><u></u></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt">and in your_handler_function you record the request and return a NGX_OK, which allow the request to continue to the next handler.<u></u><u></u></p>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><u></u> <u></u></p>
</div>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><u></u> <u></u></p>
<div>
<p class="MsoNormal">On Mon, Aug 12, 2013 at 9:11 PM, Myla John-B22173 <<a href="mailto:B22173@freescale.com" target="_blank">B22173@freescale.com</a>> wrote:<u></u><u></u></p>
<div>
<div>
<p class="MsoNormal">Hi,<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">I am VERY new to NGINX and trying to understand how it works. I understand there are 3 main components, handlers, filters and load balancers and there can be multiple “Filters”.
<u></u><u></u></p>
<p class="MsoNormal">My question is, can we have multiple “Handlers”?  I want to develop a module, which need to capture all the requests, need to record these requests and continue the normal processing.<u></u><u></u></p>


<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Regards,<u></u><u></u></p>
<p class="MsoNormal">John    <u></u><u></u></p>
</div>
</div>
<p class="MsoNormal"><br>
_______________________________________________<br>
nginx-devel mailing list<br>
<a href="mailto:nginx-devel@nginx.org" target="_blank">nginx-devel@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-devel" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-devel</a><u></u><u></u></p>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
</div></div></div>
</div>

<br>_______________________________________________<br>
nginx-devel mailing list<br>
<a href="mailto:nginx-devel@nginx.org">nginx-devel@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-devel" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-devel</a><br></blockquote></div><br></div>