[linux] nginx 파일 업로드 오류 해결 - 413 Request Entity Too Large
nginx 초기 설정 후 웹사이트를 설정하고 파일을 업로드하면 "413 Request Entity Too Large" 에러가 발생하는 경우가 있습니다.
nginx의 기본 설정된 업로드 제한이 1Mb이기 때문이 이보다 큰 파일, 또는 데이터 업로드를 하면 "413 Request Entity Too Large" 에러가 발생하면서 너무 큰 내용을 전송해서 차단되었다는 에러 메시지가 표시됩니다.
nginx 설치 경로에 있는 nginx.conf 설정 파일에 업로드 최대 크기 제한 설정 값을 추가/수정해서 업로드 최대 용량을 늘릴 수 있습니다.
텍스트 편집기로 /etc/nginx/nginx.conf 파일을 열어서 다음의 내용을 찾아서 수정합니다. 해당 설정 항목이 없으면 추가합니다. 최신 nginx 설정에서는 해당 설정 항목이 없으며 기본 값은 1Mb 입니다.
다음 설정은 20Mb로 업로드 용량을 제한합니다. 끝에 붙은 M은 메가바이트 단위입니다. 생략하면 바이트 단위로 크기를 조금더 정밀하게 설정할 수 있습니다.
http {
client_max_body_size 20M;
...
}
용량 제한을 무제한으로 하려면 값을 "0"으로 설정합니다.
업로드 제한 용량 설정 항목은 http{}, server{}, location{} 블록에서 사용할 수 있습니다.
설정 파일 저장후 nginx를 재시작합니다.
sudo systemctl nginx restart