-
Notifications
You must be signed in to change notification settings - Fork 1
회의록 | 5주차
jeongmin edited this page Feb 2, 2024
·
1 revision
기간: 24.01.29
- Config 값 유효성 검사
- 에러 코드 추가
- cgi path, error_page 저장 시 projectRootPath를 붙이기
- 중복된 지시자가 들어오는 경우(error_page 제외) 처리
[ config 파일 값 유효성 검사 ]
- 전체 모두 빈 값이 아닌지 확인
- path에 해당하는 값 동일하게 검사할 것
- uri에 포함되지 않는 문자가 들어가있는지(?도 허용하지 않음)
- / 로 시작하는지 확인
- dot-segment로 돌리기
- 퍼센트 인코딩으로 돌리기
- project_root - path
- 중복된 지시자가 들어오는 경우 예외
- server 블록
- 중복된 지시자가 들어오는 경우 예외
- listen - host
- [0-255].[0-255].[0-255].[0-255] 형식인지 확인
- listen - port
- 모두 숫자인지 확인
- port 번호 범위 확인
- 잘 알려진 포트인지 확인
- server_name
- 저장할 때 소문자로 저장
- 중복 확인
- :랑 @, /는 제외하고
reg-name = *( unreserved / pct-encoded / sub-delims )
- location 블록
- error page를 제외하고 중복된 지시자가 들어오는 경우 예외
- root - path
- index - path처럼 검사 동일
- allow_method - 허용하지 않는 메서드 들어왔는지 검사
- client_max_body_size - int로 변환 실패, 허용하는 범위를 넘어섰는지
- autoindex - on, off만 허용
- error_page - code
- 모두 숫자인지 확인, 3자리 인지 확인
- 4XX, 5XX 인 경우 확인
- 중복된 코드인지 확인
- error_page - uri
- 저장할 때 project_root + uri 경로로 저장
- path 와 동일
- ErrorBuilder에서 파일 경로 부분 수정
- cgi - extension
- . 으로 시작하는지 확인
- 확장자에 포함될 수 있는 문자인지 확인
- cgi - path
- path 와 동일
- 저장할 때 project_root + uri 경로로 저장
- cgi - upload_dir
- path와 동일
- 저장할 때 project_root + uri 경로로 저장
- redirect
- path와 동일
- 허용 함수 정리
- 소켓 프로그래밍
- CGI
- 가상 호스트
- NGINX autoindex 동작 정리
- HTTP Request 파싱
- HTTP Request 값 유효성 검사
- Config 파일 Parsing