2014-05-19 2 views
6

У меня большой URI, и я пытаюсь настроить Nginx на его принятие. Параметр URI имеет длину 52000 символов с размером 52 КБ. Я попытался получить доступ к URI без Nginx, и он отлично работает.Настройка Nginx для больших URI

Но когда я использую Nginx, это дает мне ошибку. --- 414 (Request-URI Too Large)

Я сконфигурировал large_client_header_buffers и client_header_buffer_size в блоке http, но он, похоже, не работает.

client_header_buffer_size 5120k; 
large_client_header_buffers 16 5120k; 

Любая помощь будет оценена по достоинству.

спасибо.

+0

Возможный дубликат [Как установить допустимую длину URL-адреса для запроса nginx (код ошибки: 414, слишком большой uri)] (http://stackoverflow.com/questions/1067334/how-to-set-the- allow-url-length-for-a-nginx-request-error-code-414-uri-too) –

+0

Вместо этого вы решили использовать POST-запрос? –

+0

Это не дубликат этого вопроса. Если вы пройдете этот вопрос, вы увидите, что то, что предлагается, уже сделано мной. Это все еще не работает. Если я выключу Nginx, все будет хорошо. Я хотел использовать Nginx для балансировки нагрузки, и я уже сделал настройку. Это единственный дорожный блок. –

ответ

17

Я нашел решение. Проблема заключалась в том, что было несколько экземпляров nginx. Это вызвало конфликт, и поэтому big_client_header_buffers не работал. После уничтожения всех экземпляров nginx я перезапустил nginx с конфигурацией:

client_header_buffer_size 64k; 
large_client_header_buffers 4 64k; 

После этого все началось.

Надеюсь, что это поможет любому, кто сталкивается с этой проблемой.

+0

Еще одна проблема, с которой я столкнулся, заключалась в том, что Интернет моей организации также был через прокси-сервер, и это тоже имело ограничение заголовка, поэтому иногда проблема могла возникать и оттуда. –

+0

Есть ли ограничение на размер буфера? –

+0

нет я так не считаю. –

Смежные вопросы