Nginxi viga"taotluse päis või küpsis on liiga suur
" ilmneb, kui taotluse päiste või küpsiste suurus ületab maksimaalse lubatud suuruse, mis on määratud serveri konfiguratsioonis. Selles artiklis analüüsime üksikasjalikult, miks see juhtub.
Viga tekib siis, kui HTTP/HTTPS päringu päiste suurus ületab lubatud piiri. Näiteks saadab brauser liiga palju küpsiseid või veebiserverile saadetud päring on liiga suur.
Taotlus jaguneb tavaliselt kaheks osaks: päised - kus asub üldine teave ja metaandmed ning taotluse keha. Nii päringu keha kui ka päised võivad olla erineva suurusega - nii väikesed kui ka suured ning nende suurus ei tekita tavaliselt mingeid probleeme. Kui aga veebiserveri seadetes on parameeter, mis piirab päringu päise pikkust, siis on tõenäoline, et saate selle vea.
Probleemi lahendamiseks on mitu võimalust
nginx.conf
konfiguratsioonifaili järgmised read.GET-i
asemel POST-i
päringut. Kui probleem ilmneb suurte parameetritega GET
päringu saatmisel, võite proovida GET
asemel kasutada POST
päringut.Selle vea parandamiseks (kui olete Nginxi veebiserveri administraator) peaksite suurendama maksimaalset päise suurust, muutes parameetrit large_client_header_buffer
. Kui olete selle veebisaidi tavakasutaja, kus see viga ilmnes, peaksite ootama, kuni ressursi administraator parandab vea.
Teil tuleb korrigeerida parameetrit large_client_header_buffer
, mis võtab 2 numbrit, näiteks 4 ja 8 (mis on vaikimisi määratud). Esimene number on väärtus, mis määrab maksimaalse puhvrite arvu ja teine number on puhvri suurus, millesse päringu päis loetakse. Teine parameeter on määratud kilobaitides.
See rida lisatakse Nginxi konfiguratsioonifaili http-osasse või konkreetse saidi serveriosasse. Nginxi veebisaidi konfiguratsioonifailid asuvad tavaliselt failis /etc/nginx/conf.d/
või /etc/nginx/sites-available/
(sõltuvalt sellest, kuidas Nginx paigaldati - kas kasutades operatsioonisüsteemi tavapärast repositooriumi või kasutades Nginxi repositooriumi).
Väärtuse reguleerimiseks võite määrata suurte päiste salvestamiseks sobivad numbrid 8 ja 64. Parameeter näeb välja selline:
large_client_header_buffers 8 64k;
Kui konfiguratsioonifaili on tehtud muudatused, tuleb Nginx taaskäivitada käsuga:
sudo systemctl reload nginx
Need on meetodid selle probleemi lahendamiseks.