-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ERR_HTTP2_SERVER_REFUSED_STREAM with PHP web application on 0.9.0 #1642
Comments
@alexharrington could you try with |
@alexharrington #1644 will be merged by the end of the week and will allow to disable |
Thanks, although HTTP/2 works fine on 0.8.0. |
Could you try mounting a file to http2_max_concurrent_streams 256; |
That doesn't seem to make any difference as far as I can see. I have a test VPS I've just setup to try your suggestion above. If you want me to provide you access to that temporarily then I'd be happy to? |
I'm skimming through the diff between Also I noticed this in the doc :
I have no idea why this was added at the time and if it is still relevant but it might be worth a shot to try with |
Same issue with Can I try lowering the worker connections setting somehow to test that? I tried directly editing /etc/nginx/nginx.conf inside the proxy container, and then restarting, but I still have the same issue. Very happy to test anything you wish. Thanks so much for your help with this. |
I've just pushed It's identical to the |
Thank you. |
I've pushed the following images:
Could you test them and tell me with which version of nginx does the issue start to appear ? |
|
Relevant bits: In
In
And maybe this in
|
Additional info: We're not setting We're not setting We were not using any |
https://trac.nginx.org/nginx/ticket/2155
Final closing message:
|
If it's useful, Chrome shows 44 requests made to load the page that I've been testing with. Certainly nowhere near the thousands of resources they're talking about in that issue. It sounds though like it's browser side, so I think we'll disable HTTP2 when that option is available to us, and then look to re-enable it down the line when hopefully Chrome gets fixed. Thanks for your help on this. |
I figured from your screenshot that you're far from the ~1000 requests mentioned in the nginx issue, but it seems to be triggered even with a low requests count in some corner cases:
Have you tried with other browsers ? |
I hadn't tried it no, but I have now. Firefox 89 seems to have a similar issue. The page loads, but some of the CSS/JS is missing with 0.9.0. The page takes a long time to load compared to normal. I can't see a response code, but I can see that the browser spent some time in the "sending" phase but never got a response. |
I can reproduce the exact same behavior with the nginx ingress controller using the bitnami helm charts https://github.com/bitnami/charts/tree/master/bitnami/nginx-ingress-controller a workaround which works for me is to set the keep-alive value to "1" instead of "0" |
@AndreasKappel which nginx keep alive variable specifically ? |
Adding |
What would be the possible implications of adding |
We recently noticed the same problem, it happen on chromium browser for the moment. Here is any news about this issue ? i tried the last docker image and i also get the problem when keepalive_timeout is 0. |
Using the version 1642 seems to fix the problem, even with keepalive_timout 0 |
I solved my
The default value for http://nginx.org/en/docs/http/ngx_http_core_module.html#keepalive_requests If you want to specify "unlimited" there is no such value; just set a high value. The higher the value the more memory your server will consume. More info here: https://serverfault.com/a/425130/241371 and here: https://trac.nginx.org/nginx/ticket/2155 |
I'm running Xibo (which is PHP/Apache) behind nginx-proxy with the LetsEncrypt helper.
Normally no issues, but today I did a new install and on about 30% of my page loads (mainly javascript files), Chrome 90 gives an error loading those resources
ERR_HTTP2_SERVER_REFUSED_STREAM
. Refreshing the page gets the error on a different number of those URLs. If I access the URLs individually they work as expected.Dropping down to 0.8.0 fixes it, and going back to 0.9.0 causes it again, so I can only presume it's something changing in nginx?
To replicate, you'd need a docker-compose setup like this:
Once the containers are started, log in at
https://cms.example.org
- usernamexibo_admin
, passwordpassword
and check the Chrome network access tab in developer tools.The text was updated successfully, but these errors were encountered: