Adding a fd that is not obtained through accept to the list the active connections

Phillip Odam phillip.odam at nitorgroup.com
Thu Aug 26 19:57:59 UTC 2021


Hi Ottavio

I’m probably overlooking something in the description of what you want but
I think NGINX out of the box provides you with what you want.

Here’s an example of one I’ve implemented.

A software project I don’t develop retrieves dependencies from w3.org (it’s
a SOAP web service that retrieves a remote XSD)

The trouble with depending on a file sourced from w3.org is that if the
file is requested too frequently w3.org will rate limit your requests.

One solution would be to store the XSD in the web service but that’d
require changing the application.

I chose to run an NGINX where it’s upstream was configured to point at
w3.org and to avoid needlessly retrieving the same content repeatedly a
cache was used.

So the NGINX was listening on local host in this case and for the backend
it was connecting to whatever w3.org resolves to. And so no changes were
needed in the app I changed the servers hosts file to point w3.org to
localhost. This isn’t a problem for NGINX to connect to w3.org as the w3.org
IP was hard coded in the upstream.

And NGINX’s built in connection counting works with this.

Barring the cache is this what you’re describing you want?

Phillip

On Thursday, August 26, 2021, Ottavio Campana <ottavio at campana.vi.it> wrote:

> Hello,
>
> I want to write a module for an nginx that runs on a device with a private
> IP address and behind NAT, connects to a remote server and adds the newly
> created connection to the list of connections handled by nginx. At this
> point the remote server will invert the connection and start making
> requests.
>
> I tried studying the documentation on nginx.org, but I am not able to get
> an idea about how to achieve this.
>
> Can you please give me a suggestion about how to do it?
>
> Thank you,
>
> Ottavio
>
> --
> Non c'è più forza nella normalità, c'è solo monotonia
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-devel/attachments/20210826/903a9681/attachment.htm>


More information about the nginx-devel mailing list