Comment définir la longueur url autorisée pour une demande de nginx (code d'erreur: 414, uri trop grand)
-
21-08-2019 - |
Question
J'utilise Nginx devant 10 roquets.
Quand je fais une demande de plus grande taille, puis 2900 je reviens un:
code d'erreur 414: uri trop grand
Quelqu'un sait-il le paramètre dans le fichier de configuration nginx qui détermine la longueur uri autorisée?
La solution
De: http://nginx.org/r/large_client_header_buffers
Syntaxe:
large_client_header_buffers
number
size
;
Par défaut:
large_client_header_buffers 4 8k;
Contexte: http, serveurDéfinit le maximum <=> et <=> de tampons utilisés pour la lecture de grande tête de demande du client. Une ligne de demande ne peut pas dépasser la taille d'un tampon, ou le 414 (Request-URI trop grande) erreur est renvoyée au client. Un champ d'en-tête de demande ne peut pas dépasser la taille d'un tampon aussi bien, ou 400 (Bad Request) erreur est renvoyée au client. Les buffers sont attribués uniquement à la demande. Par défaut, la taille de la mémoire tampon est égale à 8K octets. Si, après la fin de la demande de traitement d'une connexion dans la transition de l'état de keep-alive, ces tampons sont libérés.
donc vous devez modifier le paramètre de taille à la fin de cette ligne à quelque chose de plus à vos besoins.
Autres conseils
Pour toute personne ayant des problèmes avec cela sur https://forge.laravel.com , j'ai réussi à cela fonctionne en utilisant une compilation des réponses SO;
Vous aurez besoin du mot de passe sudo.
sudo nano /etc/nginx/conf.d/uploads.conf
Remplacer 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;