Failed to load resource: the server responded with a status of 413 (Request Entity Too Large)

2024. 2. 24. 01:17·Nginx

 

문제

백엔드 채팅 기능을 개발하면서

이미지와 파일 업로드를 추가했는데, 테스트를 해보니 오류가 발생하여

오류를 타고 타고 들어가다 nginx 로그를 확인해보니 제목과 같은 오류가 발생했다.

 

이는 nginx에서 client_max_body_size 설정 때문이고,

너무 큰 사이즈의 request를 보내지 못 하도록 제한을 거는 설정이다.

 

client_max_body_size의 기본값은 1MB이다.

request의 Content-Length 헤더 값이 이 설정된 값을 넘을 수 없기 때문에

파일 업로드할 때 오류가 발생한 것이다.

 

 

 

해결

악의적으로 큰 용량의 파일을 업로드해서 스토리지를 가득 채울 수 있기 때문에

우선은 채팅방에 업로드할 수 있는 최대 사이즈를 10MB로 설정하기로 하였다.

 

1. nginx 환경 파일에 접근

$ sudo vi /etc/nginx/nginx.conf

 

2. 서버 업로드 크기(사이즈) 설정

http { 로 시작하는 블럭 안에 아래와 같이 서버 업로드 사이즈를 설정해준다.

참고로 제한을 두지 않으려면 0으로 설정하면 되나, 되도록이면 0으로 설정하지 말자.

http {
    client_max_body_size {제한 사이즈}
}

 

3. nginx 재시작

리로드 전에, 수정한 nginx 설정 파일이 문법 문제가 없는지 확인하기

$ sudo nginx -t

리로드 수행

$ sudo service nginx reload

 

 

 

'Nginx' 카테고리의 다른 글

Nginx Reverse Proxy로 Private Subnet의 Grafana에 연결 중 발생한 오류와 해결  (0) 2024.09.26
Nginx에서 해외 IP 차단 설정하기  (0) 2024.02.24
'Nginx' 카테고리의 다른 글
  • Nginx Reverse Proxy로 Private Subnet의 Grafana에 연결 중 발생한 오류와 해결
  • Nginx에서 해외 IP 차단 설정하기
개발이조아용
개발이조아용
IT 개발에서 배운 성장의 기록을 작성합니다.
  • 개발이조아용
    계속 하다 보면?!
    개발이조아용
  • 전체
    오늘
    어제
    • 분류 전체보기 (68)
      • Tibero DB (Tmax AI Bigdata .. (7)
      • Git (2)
      • CI CD (2)
      • Redis (3)
      • SpringBoot (16)
      • SQL 문제 풀이 (8)
      • Apache Kafka (8)
        • 오류 해결 (3)
        • 개념 정리 (4)
        • 보안 (1)
      • Nginx (3)
      • SW마에스트로 (3)
      • Kubernetes (4)
      • AWS (5)
      • gRPC (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    nginx
    K8S
    Kafka SASL
    SpringBoot
    소프트웨어 마에스트로
    Kafka 개념
    Tibero
    Kafka 오류
    leetcode
    Redis 개념
    SQL
    SASL 인증
    KAFKA
    redis
    Git
    sql 문제
    MSA
    grpc
    redis script
    DynamoDB 연동
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
개발이조아용
Failed to load resource: the server responded with a status of 413 (Request Entity Too Large)
상단으로

티스토리툴바