Squid 7 half_closed_clients: traktado de la fermo de la skriba flanko de kliento
Interpretu fruan EOF de kruda TCP-testa kliento per la politiko half_closed_clients de Squid 7.
TCP-kliento povas fini sendi peton kaj fermi sian skriban flankon dum ĝi plu atendas la respondon. La politiko de Squid por tiu stato gravas kiam oni komparas malgrandan krudan TCP-teston kun HTTP-kliento.
Por Squid 7, la dokumentita defaŭlto estas:
half_closed_clients off
Kun tiu politiko, Squid fermas klientan konekton kiam legado raportas, ke pli da envenantaj datumoj ne ekzistas. Kun la opcio ŝaltita, ĝi povas teni la konekton ĝis legado aŭ skribado renkontos eraron. La dokumentaro rekomendas la defaŭltan politikon off por ordinara antaŭa prokura funkciado.
Notu kiam la testa kliento signalas finon de enigo. Dukto, kiu atingas EOF de stdin, povas konduti alie ol kliento, kiu tenas sian sendan flankon malfermita dum ĝi legas la respondon, eĉ kiam ambaŭ sendis la samajn bajtojn de HTTP-peto.
Se la testa kliento tute finiĝas, ĝi ne povas legi respondon, kiu alvenas poste. Duonferma agordo ĉe la servila flanko ne povas ŝanĝi la vivdaŭron de tiu klienta procezo.
Elektu la EOF-konduton de la kliento kaj la prokuran politikon kune por la celata testo. La duonferma politiko ankaŭ supozas HTTP-mesaĝon kun valida kadrigo; ĝi ne provizas mankan petan korpon nek riparas nekompletan kaplan blokon.