Tôi đã gặp lỗi nginx:
413 Request Entity Too Large
Tôi đã có thể cập nhật client_max_body_size
trong phần máy chủ của tệp nginx.conf của tôi lên 20M và điều này đã khắc phục sự cố. Tuy nhiên, nginx mặc định là client_max_body_size
gì?
Câu trả lời:
Giá trị mặc định cho client_max_body_size
chỉ thị là 1 MiB .
Nó có thể được thiết lập trong http
, server
và location
bối cảnh - như trong hầu hết trường hợp , điều này chỉ trong một khối lồng nhau được ưu tiên hơn các chỉ thị tương tự trong khối tổ tiên .
Trích từ tài liệu ngx_http_core_module :
Syntax: client_max_body_size size; Default: client_max_body_size 1m; Context: http, server, location
Đặt kích thước tối đa được phép của nội dung yêu cầu khách hàng, được chỉ định trong trường tiêu đề yêu cầu "Nội dung-Độ dài". Nếu kích thước trong một yêu cầu vượt quá giá trị được định cấu hình, thì lỗi 413 (Đối tượng Yêu cầu Quá Lớn) sẽ được trả về máy khách. Xin lưu ý rằng các trình duyệt không thể hiển thị chính xác lỗi này. Đặt kích thước thành 0 sẽ vô hiệu hóa việc kiểm tra kích thước nội dung yêu cầu của khách hàng.
Đừng quên tải lại cấu hình
bằng nginx -s reload
hoặc service nginx reload
các lệnh có sẵn sudo
(nếu có).
nginx -s reload
sẽ không áp dụng cấu hình sai cú pháp mà sẽ báo lỗi.
off_t
kích thước kiểu (xem ngx_http_core_module.h
). Trong trường hợp 64-bit, off_t
kích thước thực thi là 64 bit và giá trị tối đa phải là 2 ^ 63 byte.
Bạn có thể tăng kích thước cơ thể trong tệp cấu hình nginx như
sudo nano /etc/nginx/nginx.conf
client_max_body_size 100M;
Khởi động lại nginx để áp dụng các thay đổi.
dịch vụ sudo nginx khởi động lại
nginx -t
để kiểm tra cấu hình của mình trước khi chạynginx -s reload
để áp dụng các thay đổi cấu hình. Nó không thể đảm bảo cấu hình của bạn là chính xác, nhưng nó sẽ bắt lỗi cú pháp hoặc giá trị không hợp lệ.