nginx reports [upstream sent no valid HTTP/1.0 header] when used with varnish
Maxim Dounin
mdounin at mdounin.ru
Tue Apr 22 10:21:07 UTC 2014
Hello!
On Tue, Apr 22, 2014 at 03:30:37PM +0530, Joydeep Bakshi wrote:
> @Lukas - attached is the cap file
>
> @Maxim - after starting varnish only the following port comes up
>
> # netstat -nat | grep 60
> tcp 0 0 0.0.0.0:6082 0.0.0.0:* LISTEN
> tcp 0 0 :::6082 :::* LISTEN
Check varnish starup options. As per documentation, the "-a"
argument of the varnishd is what you have to check:
https://www.varnish-cache.org/docs/4.0/reference/varnishd.html
https://www.varnish-cache.org/docs/4.0/tutorial/putting_varnish_on_port_80.html
Anyway, it doesn't looks like something nginx-related.
>
>
> On Tue, Apr 22, 2014 at 2:56 PM, Maxim Dounin <mdounin at mdounin.ru> wrote:
>
> > Hello!
> >
> > On Tue, Apr 22, 2014 at 12:55:07PM +0530, Joydeep Bakshi wrote:
> >
> > > Hello all,
> > >
> > > My setting works well through nginx->apache but not through
> > > nginx->varnish->apache
> > >
> > > apache is configured to listen to port 8080 . when nginx uses
> > >
> > > proxy_pass http://127.0.0.1:8080
> > >
> > > the sites are running fine.
> > >
> > > If I introduce varnish after nginx by [proxy_pass
> > http://127.0.0.1:6082]
> > > the nginx starts throwing following error and browser also shows "*Zero
> > > Sized Reply"*
> > >
> > >
> > > [error] 17147#0: *207 upstream sent no valid HTTP/1.0 header while
> > reading
> > > response header from upstream
> > >
> > > and /var/log/messages shows
> > >
> > > varnishd[16984]: CLI telnet 127.0.0.1 42212 127.0.0.1 6082 Wr 101 Unknown
> > > request.#012Type 'help' for more info.#012all commands are in lower-case.
> > >
> > > varnishd[16984]: CLI telnet 127.0.0.1 42212 127.0.0.1 6082 Rd
> > > Cache-Control: max-age=0
> > >
> > > obviously varnish is configured to listen to apache
> > >
> > > backend default {
> > > .host = "127.0.0.1";
> > > .port = "8080";
> > > }
> > >
> > > Can anyone please suggest the possible reason which is causing the
> > problem ?
> >
> > It looks like you've configured nginx to pass http to varnish CLI
> > port. For obvious reasons this isn't going to work.
> >
> > --
> > Maxim Dounin
> > http://nginx.org/
> >
> > _______________________________________________
> > nginx mailing list
> > nginx at nginx.org
> > http://mailman.nginx.org/mailman/listinfo/nginx
> >
> _______________________________________________
> nginx mailing list
> nginx at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx
--
Maxim Dounin
http://nginx.org/
More information about the nginx
mailing list