[Nginx] How to defeat response_status = 0

Articulus ex genere "sidenotes".

TL: not DR:

http2_max_field_size 8k; # всех спасет!

In una inceptis, mutato aliquo logica interna backendi, incepi notare mirabilem responsionem in lignis, scilicet 0. In lignis aliquid simile hoc spectat:

{
  "timestamp": "2020-01-17T08:41:51+00:00",
  "remote_addr": "zzz.zzz.zzz.zzz",
  "request_time": 0,
  "upstream_response_time": "",
  "upstream_header_time": "",
  "http_accept_language": "-language",
  "response_status": 0,
  "request": "",
  "host": "example.com",
  "upstream_addr": "",
  "http_referrer": "",
  "request_length": 5854,
  "bytes_sent": 0,
  "http_user_agent": ""
}


Lectio documenta et googling in hoc argumento prorsus nihil cessit - quia... Dictum est quod haec agendi ratio est cum cliens nexum clausit sine capite transeundo. Bene, et variae res exoticae cum magnitudine quiddam pro wsgi_, quod in casu nostro vocabulum "quoquo modo" non convenit.

In universum decrevimus quaestionem illam non esse problema, attentis nostris voluminibus minime criticam esse.

Prorsus donec sequenti problemate haesitabam: in aliquibus casibus nexus sine difficultatibus per http aperitur, sed omnino per https laborare recusat, faciens mirabilem: Connection #0 ad exercitum exempli.com intactum relictum.
Crispum: (52) Inanis responsum a servo

In lignis, hanc rem per IP solum indagare potuimus, nulla petitio vel notitia aliqua alia, ut ex exemplo superiore videri potest. Solus notabilis status est 0, sed scio me postulationem non interrumpere! Coepi ad instar quid errabis. Omnia autem simplicissima evaserunt;

audite 443 SSL http2 backlog=8192;

Bene, si uti http2 pro ssl nexus, tunc non satis est iustam petitioni buffers configurare, etiam in ngx_http_v2_module configurari debent, scilicet:

Синтаксис:	http2_max_field_size размер;
Умолчание:	http2_max_field_size 4k;
Контекст:	http, server

Finit magnitudinem maximam petitionis capitis compressi utens HPACK. Coactio aeque ac nomen ac pretium valet. Si Huffman modum translitterandi adhibetur, ipsa magnitudine nominis et pretii chordarum inpediti maior esse potest. Terminus defaltus pluribus quaestionibus aptus est.

Fere hoc est. Et cur omnes? Quoniam nexus longitudo erat longa - longior quam eadem 4k.

Ponendo, exempli gratia, 8kb (vel quantum satis verisimile est), problema solvemus.
Tales casibus.

Source: www.habr.com

Add a comment