ฉันได้รับข้อผิดพลาด nginx:
413 Request Entity Too Large
ฉันสามารถอัปเดตclient_max_body_size
ในส่วนเซิร์ฟเวอร์ของไฟล์ nginx.conf ของฉันเป็น 20M และสิ่งนี้ได้แก้ไขปัญหาแล้ว อย่างไรก็ตาม nginx เริ่มต้นclient_max_body_size
คืออะไร?
ฉันได้รับข้อผิดพลาด nginx:
413 Request Entity Too Large
ฉันสามารถอัปเดตclient_max_body_size
ในส่วนเซิร์ฟเวอร์ของไฟล์ nginx.conf ของฉันเป็น 20M และสิ่งนี้ได้แก้ไขปัญหาแล้ว อย่างไรก็ตาม nginx เริ่มต้นclient_max_body_size
คืออะไร?
คำตอบ:
ค่าเริ่มต้นสำหรับclient_max_body_size
สั่งเป็น1 เอ็มไอ
มันสามารถตั้งค่าในhttp
, server
และlocation
บริบท - เช่นเดียวกับในกรณีส่วนใหญ่นี้สั่งในบล็อกซ้อนกันจะเหนือกว่าคำสั่งเดียวกันในบล็อกบรรพบุรุษ
ตัดตอนมาจากเอกสาร ngx_http_core_module :
Syntax: client_max_body_size size; Default: client_max_body_size 1m; Context: http, server, location
ตั้งค่าขนาดสูงสุดที่อนุญาตของเนื้อหาคำขอไคลเอ็นต์ซึ่งระบุในฟิลด์ส่วนหัวของคำขอ "ความยาวเนื้อหา" หากขนาดในคำขอเกินค่าที่กำหนดไว้ข้อผิดพลาด 413 (Request Entity Too Large) จะถูกส่งกลับไปยังไคลเอนต์ โปรดทราบว่าเบราว์เซอร์ไม่สามารถแสดงข้อผิดพลาดนี้ได้อย่างถูกต้อง การตั้งค่าขนาดเป็น 0 ปิดใช้งานการตรวจสอบขนาดเนื้อหาคำขอไคลเอ็นต์
อย่าลืมโหลดการกำหนดค่าใหม่
โดยnginx -s reload
หรือservice nginx reload
คำสั่งที่เติมด้วยsudo
(ถ้ามี)
nginx -s reload
จะไม่ใช้การกำหนดค่าที่ไม่ถูกต้องทางไวยากรณ์ แต่จะรายงานข้อผิดพลาด
off_t
ขนาดประเภท (ดูngx_http_core_module.h
) ในกรณีของoff_t
ขนาดปฏิบัติการ64 บิตคือ 64 บิตและค่าสูงสุดควรเป็น 2 ^ 63 ไบต์
คุณสามารถเพิ่มขนาดร่างกายในไฟล์กำหนดค่า nginx เป็นไฟล์
sudo nano /etc/nginx/nginx.conf
client_max_body_size 100M;
รีสตาร์ท nginx เพื่อใช้การเปลี่ยนแปลง
sudo service nginx รีสตาร์ท
nginx -t
เพื่อทดสอบการกำหนดค่าของคุณก่อนที่จะเรียกใช้nginx -s reload
เพื่อใช้การเปลี่ยนแปลงการกำหนดค่า ไม่สามารถรับประกันได้ว่าการกำหนดค่าของคุณถูกต้อง แต่จะตรวจพบข้อผิดพลาดทางไวยากรณ์หรือค่าที่ไม่ถูกต้อง