Nếu bạn đang sử dụng Nginx và gặp lỗi “413 Request Entity Too Large” thì do cấu hình mặc định “client_max_body_size” của Nginx thấp hơn so với nhu cầu của bạn.
client_max_body_size là một chỉ thị của Nginx nhằm giới hạn kích cỡ tối đa của một truy vấn gửi dữ liệu lên Server của client. Truy vấn thường là khi bạn tạo 1 truy vấn POST để gửi dữ liệu lên Server và nếu dữ liệu POST này có kích cỡ lớn hơn quy định theo chỉ thị này thì Nginx sẽ trả về lỗi 413. Nếu bạn muốn Nginx bỏ qua việc kiểm tra này thì có thể thiết lập “client_max_body_size 0;“, lúc này client có thể gửi truy vấn POST lên Server với độ lớn dữ liệu không giới hạn.

Để sửa lỗi này, bạn mở file “/etc/nginx/nginx.conf” trên VPS của bạn và thêm vào dòng sau “client_max_body_size 20M;” trong block “http {…}“.
Ví dụ :
# For more information on configuration, see: # * Official English Documentation: http://nginx.org/en/docs/ # * Official Russian Documentation: http://nginx.org/ru/docs/ user nginx; worker_processes 8; error_log /var/log/nginx/error.log; #error_log /var/log/nginx/error.log notice; #error_log /var/log/nginx/error.log info; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; client_max_body_size 20M; #Thêm dòng này để fix lỗi 413 Request Entity Too Large # Load config files from the /etc/nginx/conf.d directory # The default server is in conf.d/default.conf include /etc/nginx/conf.d/*.conf; }
Nếu 20M (20 Megabytes) vẫn không đủ thì bạn có thể tăng lên theo nhu cầu của bạn. Sau đó bạn save lại file này và khởi động lại Nginx bằng lệnh sau :
service nginx restart
Tuy nhiên, để đồng bộ với giới hạn của PHP thì bạn cũng nên sửa lại các thông số sau trong file cấu hình của PHP (thường chứa trong file “/etc/php.ini“)
- post_max_size = 20M
- upload_max_filesize = 20M
Lưu lại và khởi động lại PHP bằng lệnh sau :
Nếu sử dụng LAMP (Apache) thì “service httpd restart”
Nếu sử dụng PHP-FPM thì “service php-fpm restart“