ERR_INVALID_CHUNKED_ENCODING berarti respons tidak dapat didekode sebagai pesan chunked yang utuh. Sebagian konten yang tiba dengan sukses tidak membuktikan bahwa sisa respons itu valid.

  1. Simpan header respons dan galat dekoder pertama. Tentukan komponen mana yang melaporkannya dan apakah pesan dinyatakan sebagai chunked.
  2. Temukan titik berhentinya. Pengodean HTTP/1.1 chunked memerlukan ukuran, data yang sesuai, pembatas, dan chunk penutup, dengan trailer bila berlaku. Koneksi ditutup lebih awal dan ukuran yang cacat adalah petunjuk yang berbeda.
  3. Bandingkan permintaan terkendali yang sama pada rute yang dimaksud. Cocokkan permintaan dengan log proksi dan upstream. Cari penutupan dari upstream, transformasi perantara, atau pembatalan oleh aplikasi pada titik itu.

Jangan menyimpulkan pembingkaian HTTP dari ukuran buffer TCP. Satu pembacaan socket dapat berisi setengah chunk atau beberapa chunk; pustaka kemudian dapat menampilkan konten terdekode dalam buffer yang berbeda. Catatan JSON memiliki batas lain lagi. Proksi dapat membingkai ulang respons tanpa mempertahankan batas paket aslinya.

Jika bukti mengarah ke implementasi Squid lama, simpan nomor rilisnya bersama kesimpulan itu. Saran tambalan Squid 2.x tidak menjelaskan setiap rilis saat ini. Pertahankan pendekodean normal dan validasi sertifikat selama perbandingan: menekan galat dapat membuat berkas yang tidak lengkap tampak seperti unduhan yang berhasil.

Artikel terkait