#static-files
글
-
nginx 소스 파헤치기 10: 필터와 정적 파일 — 응답은 어떻게 흘러 나가나
정적 파일 하나가 응답이 되어 소켓까지 가는 길을 nginx 1.31.9 소스로 따라갑니다. 파일 내용을 읽지 않고 ngx_buf_t 에 "파일의 몇 번째부터 몇 번째"만 적는 static 핸들러, 함수 포인터 두 개로 이어 붙인 헤더·본문 필터 사슬과 그 순서를 정하는 ngx_modules.c, 파일을 메모리로 읽을지 정하는 copy 필터와 ngx_output_chain, 모아 두었다 보내는 write 필터와 writev + sendfile 까지 gdb·strace·디버그 로그로 확인합니다.
-
Apache httpd 소스 파헤치기 12: 핸들러와 정적 파일 — 파일 하나는 어떻게 응답이 되나
SetHandler와 AddHandler가 정하는 "핸들러"가 Content-Type과 어떻게 다른지, 아무도 맡지 않은 요청을 코어의 default_handler()가 어떻게 파일 버킷 하나로 내보내는지를 소스로 따라갑니다. ETag와 304, Range와 206, 끝 슬래시 301과 DirectoryIndex, 그리고 EnableSendfile·EnableMMAP이 실제로 어떤 시스템 콜을 바꾸는지도 curl과 strace로 확인합니다.