Something is definitely wrong here but I’ve stripped most of the more advanced 
configuration out of the vhost conf, removed all modules other than NJS, and 
set the Nginx compile to pretty much the most vanilla compile option set that I 
can to rule out the possibility of 3rd party interference with this.  Nothing 
is having any impact on the args var output.  For POST, it’s always an empty 
object.  For GET, it’s always showing the query string vars in a key/value pair 
(if there are any).  The variables and rawVariables objects always seem to be 
empty but I’m not setting any vars with NJS right now.  I’m only setting those 
in Nginx.

At this point, if you’re saying that it should be working, I’m inclined to 
think that I’ve discovered some sort of bug.  Debug didn’t turn up anything 
unexpected.  I’m not the most well versed person at parsing through debug logs 
but it all looked like expected stuff to me.

Moreover, the config that I was using at the start of this conversation is a 
config that is working on multiple thousands of production websites on well 
over 100 servers that we care for with no issues whatsoever.  Not to mention 
that that config works just fine with LuaJIT.  The only difference was that we 
swapped out the LuaJIT hooks for NJS to see how that might work instead.   But 
like I said, at this point, even with no 3rd party modules, no patches of any 
sort, very basic compile settings, and no fancy use of Nginx settings (e.g. 
extensive use of IF), it’s just not working.

So either I have stumbled across some flaw in NJS or there’s a misunderstanding 
somewhere in the discussion.


--
Lance Dockins

On Aug 11, 2021, 10:00 PM -0500, Lance Dockins <la...@wordkeeper.com>, wrote:
> Unfortunately, we can’t really use standard packages.  We need extra modules. 
>  I’m recompiling and enabling debug now.  The modules we’re using aren’t 
> anything super abnormal and we might replace one of them with NJS at some 
> point.  All I know for sure is that this seems to work just fine with 
> OpenResty’s LuaJIT integration/module.  So it’s something that is different 
> between NJS and that.
>
> Hopefully the debug will turn something up.
>
>
> --
> Lance Dockins
>
> On Aug 11, 2021, 9:57 PM -0500, Sergey A. Osokin <o...@freebsd.org.ru>, wrote:
> > On Wed, Aug 11, 2021 at 09:48:48PM -0500, Lance Dockins wrote:
> > > I’ll try recompiling nginx with that to see if that changes anything.
> >
> > I'd recommend to use official packages for Linux from the following URL,
> > http://nginx.org/en/linux_packages.html
> >
> > > In fact, even your code is returning nothing.
> >
> > That's definitely something wrong on your side. Please simplify the
> > nginx configuration, remove all unnecessary directives.
> >
> > ...
> >
> > > When I submit a POST with vars, I still get an empty object in the 
> > > response.
> >
> > A couple of suggestions:
> >
> > - Have you enabled debugging log? If so, could you share nginx-error.log.
> > - How did you test the code? Here's my shell script:
> >
> > #!/bin/sh
> >
> > curl -v --data-binary @test.bin http://127.0.0.1:8080/test?foo=bar\&baz=1
> >
> > #EOF
> >
> > Please report when all suggested points are done, thanks.
> >
> > --
> > Sergey
> > _______________________________________________
> > nginx mailing list
> > nginx@nginx.org
> > http://mailman.nginx.org/mailman/listinfo/nginx
_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx

Reply via email to