nginx Baris permintaan terlalu besar

12

Saya mendapatkan kesalahan:

Bad Request
Request Line is too large (6060 > 4094)

Ketika saya mengakses url tertentu di server saya seperti ini:

/api/categorize?packages=package1,package2,...packageN

Pada nginx.conf saya punya:

large_client_header_buffers 8 16k;

client_header_buffer_size 8k;

Saya tidak dapat menemukan dokumentasi tentang masalah khusus itu, dokumen untuk large_client_header_buffers menyebutkan 400 permintaan buruk, tetapi mengubah "large_client_header_buffers" dari 4 8k; atau 8 8k; atau 8 16; tidak memperbaiki masalah.

Rafael Barros
sumber
1
apakah Anda menggunakan nginx saja atau apakah itu sebuah frontend untuk gunicorn? karena tampaknya kesalahan ini berasal dari gunicorn: sourcegraph.com/github.com/benoitc/gunicorn/symbols/python/…
replay
@ mauro.stettler Ini adalah frontend untuk gunicorn. Bagaimana cara saya menambah panjang URL di gunicorn?
Rafael Barros

Jawaban:

16

Kesalahan ini tampaknya berasal dari backend Gunicorn, bukan dari Nginx. Anda dapat mengubah batasnya dengan melewati parameter --limit-request-lineatau set limit_request_line.

Anda dapat melihat deskripsi di sini .

ulangan
sumber
3
Ini persis apa yang saya neded.
PepperoniPizza