web-dev-qa-db-fra.com

Comment définir la longueur autorisée d'URL pour une requête nginx

J'utilise Nginx devant 10 métis.

Lorsque je fais une demande dont la taille est supérieure à 2900, je reçois un:

code d'erreur 414: uri trop grand

Est-ce que quelqu'un connaît le paramètre dans le fichier de configuration nginx qui détermine la longueur autorisée d'URI?

46
Prakash Raman

De: http://nginx.org/r/large_client_header_buffers

Syntaxe:large_client_header_buffersnumbersize;
Défaut:large_client_header_buffers 4 8k;
Contexte: http, serveur

Définit les number _ et size maximum des tampons utilisés pour la lecture d'en-tête de requête client volumineuse. Une ligne de demande ne peut pas dépasser la taille d'un tampon, sinon l'erreur 414 (Request-URI Too Large) est renvoyée au client. Un champ d'en-tête de requête ne peut pas dépasser la taille d'un tampon. Dans le cas contraire, l'erreur 400 (Requête incorrecte) est renvoyée au client. Les tampons ne sont alloués que sur demande. Par défaut, la taille de la mémoire tampon est égale à 8 Ko. Si, après la fin du traitement de la demande, une connexion passe à l'état de maintien en activité, ces tampons sont libérés. 

vous devez donc modifier le paramètre de taille à la fin de cette ligne pour qu’il soit plus grand que vos besoins.

78
Stobor

Pour ceux qui ont des problèmes avec ceci sur https://forge.laravel.com , j’ai réussi à le faire fonctionner à l’aide d’une compilation de SO réponses;

Vous aurez besoin du mot de passe Sudo.

Sudo nano /etc/nginx/conf.d/uploads.conf

Remplacez le contenu par ce qui suit:

fastcgi_buffers 8 16k;
fastcgi_buffer_size 32k;

client_max_body_size 24M;
client_body_buffer_size 128k;

client_header_buffer_size 5120k;
large_client_header_buffers 16 5120k;
0
Luke Snowden