Төлем әдістері Abuse

413 қатесі нені білдіреді және оны қалай түзетуге болады

07.07.2024, 23:21

Сирек жағдайларда, бірақ үлкен файлдарды веб-сайтқа жүктеп салу кезінде Nginx веб-сервері қайтаратын қате пайда болады - 413 сұрау нысаны тым үлкен. Қате серверде рұқсат етілгеннен тым үлкен файлды серверге жүктеп салуға әрекет жасағанда пайда болады. Әрі қарай, біз 413 сұрау нысаны тым үлкен қатенің сипаттамасын және оны Nginx веб-серверінің жағында түзету әдістерін қарастырамыз.

413 қатесі нені білдіреді?

413 қатесі немесе Сұраныс нысаны тым үлкен «сұрау нысаны тым үлкен» дегенді білдіреді немесе қарапайым сөзбен айтқанда, тасымалданатын деректер көлемі тым үлкен. Сұрау мәтіні (немесе файл) тым үлкен болғандықтан, сервер сұрауды өңдей алмаса, қате қайтарылады. Қатенің скриншоты төменде көрсетілген:

Әдепкі бойынша, Nginx 1 МБ болатын сұрау мәтінінің өлшеміне шектеу қояды. Сұрау теңшелген мәннен асып кетсе, 413 сұрау нысанының тым үлкен қатесін көресіз.

Неліктен қате пайда болады?

413 "Сұраныс нысаны тым үлкен" қатесі веб-сервер сұрауды қабылдамаған кезде орын алады, себебі сұрау денесінің өлшемі серверде орнатылған максималды рұқсат етілген өлшемнен асып түседі. Бұл сұрауда жіберілген деректердің (мысалы, файлды серверге жүктеп салу кезінде) өңдеу үшін тым үлкен екенін білдіреді.

Мәселені шешіңіз:

  1. Сервер параметрлерін өзгерту арқылы: Серверде рұқсат етілген максималды сұрау өлшемін үлкейтуге болады. Бұл веб-сервер конфигурациясының файлдарын өзгертуді қажет етуі мүмкін - Apache, Nginx.
  2. Деректер өлшемін азайту: Мүмкін болса, сұрауда жіберілген деректердің өлшемін азайтуға тырысыңыз. Мысалы, файлды жүктеп алып жатсаңыз, оның өлшемін азайтып көріңіз.
  3. Деректерді тасымалдаудың басқа әдістерін қолдану: бір үлкен сұраудың орнына деректерді бірнеше кішіректерге бөліп, бөліктерге жіберуге болады.
  4. Басқа файлдарды тасымалдау әдістерін пайдалану: Үлкен файлдарды тасымалдау үшін арнайы файлдарды ортақ пайдалану қызметтерін немесе FTP қызметін пайдалануға болады.

Сұрауды жіберіп жатқан серверді басқармасаңыз, 413 "Сұраныс нысаны тым үлкен" қатесін шешуге көмек алу үшін сервер әкімшісіне немесе техникалық қолдау қызметіне хабарласыңыз.

Қалай түзетуге болады

413 қатені түзету үшін рұқсат етілген шекті арттыру керек. client_max_body_size. Опция /etc/nginx/nginx.conf конфигурация файлындағы немесе веб-сайт конфигурация файлындағы http, сервер немесе орын директивасында пайдалану үшін қол жетімді.

Кез келген мәтін өңдегішін пайдаланып nginx.conf конфигурация файлын ашыңыз:

 $ sudo nano /etc/nginx/nginx.conf

http бөліміне жолды енгізіңіз:

 $ client_max_body_size 100M

100 - веб-сайтқа жүктеп салуға болатын мегабайттағы ең үлкен файл өлшемі, бұл жағдайда 100 мегабайт. Егер сізде бірнеше веб-сайттар болса және барлық сайттарда бірден жүктеуді шектеу қажет болса, http блоктау бөлімінде client_max_body_size жолын енгізу керек.

Жүктеп алу шегін тек белгілі бір сайт үшін орнату қажет болса, client_max_body_size жолы әдепкі бойынша /etc/nginx/sites-available/file_name_with_configuration ішінде орналасқан тораптың конфигурация файлының сервер блогына қосылуы керек:

Жүктеп алу шегін сайттың белгілі бір бөлімі үшін ғана орнату қажет болғанда, client_max_body_size жолы әдепкі бойынша /etc/nginx/sites-available/file_name_with_configuration ішінде орналасқан сайт конфигурация файлының location директивасына енгізілуі керек:

Конфигурация файлдарына өзгертулер енгізілгеннен кейін оларды сақтаңыз, мәтіндік редакторды жабыңыз және пәрменді пайдаланып конфигурация файлдарының синтаксисін қателерге тексеріңіз:

 $ sudo nginx -t

Сіз келесі жолдарды көре аласыз:

 nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

Бұл қателер жоқ дегенді білдіреді. Әйтпесе, қатенің сипаттамасы, қате табылған файлдың аты және жол нөмірі көрсетіледі. Nginx конфигурация файлдарына кез келген өзгертулерді енгізгеннен кейін, олар пәрмен арқылы қайта іске қосылуы керек:

 $ sudo systemctl reload nginx

Бұл мақала веб-сайтқа үлкен файлдарды жүктеп салу кезінде пайда болатын 413 сұрау нысаны тым үлкен деп аталатын Nginx қатесін қарастырады. Қатенің өзін сипаттаудан басқа, Nginx конфигурация файлдарын өңдеу арқылы қатені шешу қадамдары да сипатталды.