Hi,
I am running nginx version: nginx/1.24.0 on CentOS Linux release 7.9.2009
(Core)
# nginx -v
nginx version: nginx/1.24.0
# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
#
I want to run a shell script every time my nginx server receives any HTTP
request. Any simple ways to do this?
Please guide me. Thanks in Advance.
Best Regards,
Kaushal
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20230818/1edde6a2/attachment.htm>
Can you explain why? I would never tie a script to a request. I post
process logs all of the time. If it needs to be in the application, don't
force it into Nginx.
Strong statement, but would love to hear why?
On Fri, Aug 18, 2023 at 9:47 AM Kaushal Shriyan <kaushalshriyan at gmail.com>
wrote:
> Hi,
>
> I am running nginx version: nginx/1.24.0 on CentOS Linux release 7.9.2009
> (Core)
>
> # nginx -v
> nginx version: nginx/1.24.0
> # cat /etc/redhat-release
> CentOS Linux release 7.9.2009 (Core)
> #
>
> I want to run a shell script every time my nginx server receives any HTTP
> request. Any simple ways to do this?
>
> Please guide me. Thanks in Advance.
>
> Best Regards,
>
> Kaushal
>
> _______________________________________________
> nginx mailing list
> nginx at nginx.org
> https://mailman.nginx.org/mailman/listinfo/nginx
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20230818/04159524/attachment.htm>
+1 on "why are you doing this?".
However, to answer the question - rather than spawning a new shell for every
request, use a loop in your bash script that is driven by access log output.
For example.
tail -n0 -f /var/log/nginx/access.log | \
while read;
do echo "one request";
done;
You'll need to handle what happens when log rotation takes place.
On Fri, 18 Aug 2023 21:39:13 -0400
Jeff Dyke <jeff.dyke at gmail.com> wrote:
> Can you explain why? I would never tie a script to a request. I post
> process logs all of the time. If it needs to be in the application, don't
> force it into Nginx.
>
> Strong statement, but would love to hear why?
>
> On Fri, Aug 18, 2023 at 9:47 AM Kaushal Shriyan <kaushalshriyan at gmail.com>
> wrote:
>
> > Hi,
> >
> > I am running nginx version: nginx/1.24.0 on CentOS Linux release 7.9.2009
> > (Core)
> >
> > # nginx -v
> > nginx version: nginx/1.24.0
> > # cat /etc/redhat-release
> > CentOS Linux release 7.9.2009 (Core)
> > #
> >
> > I want to run a shell script every time my nginx server receives any HTTP
> > request. Any simple ways to do this?
> >
> > Please guide me. Thanks in Advance.
> >
> > Best Regards,
> >
> > Kaushal
> >
> > _______________________________________________
> > nginx mailing list
> > nginx at nginx.org
> > https://mailman.nginx.org/mailman/listinfo/nginx
> >