반응형
client_body_buffer_size 는 client 요청 바디를 읽기 위한 버퍼 크기다. 디폴트 값은 8K (32 bits) | 16K (64 bits) 다.
요청 바디 크기가 버퍼 크기보다 크면, 전체 또는 일부가 http-client-body-temp-path 에 해당하는 디렉토리에 쓰여진다.
http-client-body-temp-path 는 최초 nginx 설치 할 때 --http-client-body-temp-path=path 지시자로 정한다.
디폴트 값은 prefix/proxy_temp 이고(prefix는 Nginx 빌드 결과물이 들어갈 디렉토리),
경로는 nginx.conf 에서 client_body_temp_path 지시자로 바꿀 수 있다.
이때 nginx 실행 권한과 디렉토리 접근 권한이 다르면 권한 이슈가 발생한다. 예를 들어 yangbongsoo 계정으로 nginx 를 실행 시켰는데,
http-client-body-temp-path 로 지정된 디렉토리 접근 권한이 root로 되어 있고, 요청 바디 크기가 버퍼 크기보다 크면 파일 업로드/다운로드 시 아래와 같은 권한 오류가 발생한다.
open() "/home/ybs/temp/nginx/client_body//0000000006" failed (13: Permission denied)
반응형
'Nginx' 카테고리의 다른 글
rewrite break 이슈 (0) | 2022.02.17 |
---|---|
nginx 수정 하면서 썼던 명령어 정리 (0) | 2021.08.03 |
reset_timedout_connection 옵션 (0) | 2021.01.19 |
timeout 설정 정리 (0) | 2021.01.19 |
nginx gzip 옵션 (0) | 2021.01.17 |