Nginx에서 대용량 파일 업로드 설정하기
웹 서비스를 운영하다 보면 사용자가 큰 파일을 업로드해야 하는 경우가 발생합니다. 기본적으로 웹 서버는 보안 및 리소스 사용량을 고려하여 업로드 가능한 파일 크기에 제한을 두곤 합니다. 그러나 이 제한을 넘어서는 큰 파일을 업로드하게 될 경우에는 서버의 설정을 변경해 주어야 합니다.
Nginx에서는 client_max_body_size 옵션을 통해 요청 본문의 최대 크기를 설정할 수 있습니다. 이 옵션은 클라이언트가 서버로 전송할 수 있는 최대 데이터 크기를 지정하는데 사용됩니다.
1. 전체적인 설정 변경하기 (nginx.conf)
http 블록 안에서 설정하면, 모든 서버와 위치에 대한 기본값으로 설정됩니다.
http {
...
client_max_body_size 2000M; # 여기서 2000M는 2GB를 의미합니다. 원하는 크기로 조정 가능합니다.
...
}
2. 특정 서버 설정 변경하기
특정 서버 블록에서만 이 설정을 적용하고 싶다면 server 블록 내에서 설정합니다.
server {
...
client_max_body_size 2000M; # 이 서버 블록 내에서만 2GB로 제한합니다.
...
}
3. 특정 위치 설정 변경하기
만약 특정 경로 (예: /uploads) 에서만 이 크기 제한을 변경하고 싶다면 location 블록 내에서 설정할 수 있습니다.
location /uploads {
...
client_max_body_size 2000M; # /uploads 경로에서의 요청만 2GB로 제한합니다.
...
}
변경 사항 적용하기
설정 변경 후에는 Nginx 서버를 재시작하거나 리로드하여 변경 사항을 적용해야 합니다.
sudo nginx -s reload
'WEB > Nginx' 카테고리의 다른 글
[Nginx]proxy_pass 설정 - 여러 서비스에 도메인 설정하기 (0) | 2023.01.11 |
---|---|
[Nginx]X-Forwarded-For(XFF) 설정 (0) | 2022.07.02 |
[Nginx]Customizing 301 pages to hide nginx information (0) | 2022.05.05 |
[Nginx]응답 헤더에서 Nginx 정보 제거 - remove response header server (0) | 2022.05.05 |
[Nginx]웹 크롤링 차단(Block bad bots) - http_user_agent (0) | 2022.05.05 |