Nginx 내장 변수 소개

4780 단어
nginx 서버 기반 사 이 트 를 설정 할 때 nginx 내 장 된 변수 설정 에 관 한 정 보 를 사용 합 니 다. 다음은 Nginx 를 설정 할 때 조회 할 수 있 도록 인터넷 관련 자 료 를 정리 합 니 다.
nginx 내장 변수
Nginx 내장 변 수 는 ngx_http_core_module 모듈 에 저장 되 며 변수의 명명 방식 은 apache 서버 변수 와 일치 합 니 다.한 마디 로 하면 이 변 수 는 클 라 이언 트 요청 헤더 의 내용 을 대표 합 니 다. 예 를 들 어 $httpuser_agent, $http_쿠키 등등.
다음은 nginx 가 지원 하 는 모든 내장 변수 입 니 다.
  • $arg_name 요청 의 인자 이름, 즉 "?" 뒤의 argname=arg_value 형식의 argname
  • $args 요청 의 매개 변수 값
  • $binary_remote_addr 클 라 이언 트 주소 의 바 이 너 리 형식 으로 고정 길 이 는 4 바이트
  • 입 니 다.
  • $body_bytes_sent 가 클 라 이언 트 에 게 전송 하 는 바이트 수 는 응답 헤드 가 계산 되 지 않 습 니 다.이 변수 와 Apache 의 modlog_config 모듈 의 "% B" 인자 호 환 유지
  • $bytes_sent 클 라 이언 트 에 전 송 된 바이트 수 (1.3.8, 1.2.5)
  • $connection TCP 연결 의 시리 얼 번호 (1.3.8, 1.2.5)
  • $connection_requests TCP 연결 현재 요청 수량 (1.3.8, 1.2.5)
  • $content_length "Content - Length" 요청 헤더 필드
  • $content_type "Content - Type" 요청 헤더 필드
  • $cookie_name 쿠키 이름
  • $document_루트 현재 요청 한 문서 루트 디 렉 터 리 나 별명
  • $document_uri 와 $uri
  • $host 우선 순 위 는 다음 과 같 습 니 다. HTTP 요청 줄 의 호스트 이름 > "HOST" 요청 헤더 필드 > 요청 에 맞 는 서버 이름
  • $hostname 호스트 이름
  • $http_name
  • 임의의 요청 헤더 필드 와 일치 합 니 다.
  • 변수 이름 의 후반 부 'name' 은 임의의 요청 헤더 필드 로 바 꿀 수 있 습 니 다. 예 를 들 어 설정 파일 에서 http 요청 헤드 를 가 져 와 야 합 니 다. 'Accept - language' 는 '-' 을 밑줄 로 바 꾸 고 대문자 로 소문 자로 바 꿀 수 있 습 니 다. 예 를 들 어 $httpaccept_language 하면 됩 니 다.

  • $https 가 SSL 보안 모드 를 열 었 다 면 값 은 'on' 이 고 그렇지 않 으 면 빈 문자열 입 니 다.
  • $is_args 요청 에 인자 가 있 으 면 값 은 "?" 이 며, 그렇지 않 으 면 빈 문자열 입 니 다.
  • $limit_rate 응답 속도 제한 설정 에 사용, limit 참조rate。
  • $msec 현재 유 닉 스 타임 스탬프 (1.3.9, 1.2.6)
  • $nginx_버 전 nginx 버 전
  • $pid 작업 프로 세 스 의 PID
  • $pipe 가 파이프 통신 을 요청 하면 값 은 "p" 이 고 그렇지 않 으 면 "." (1.3.12, 1.2.7)
  • 입 니 다.
  • $proxy_protocol_addr 프 록 시 접근 서버 의 클 라 이언 트 주 소 를 가 져 옵 니 다. 직접 접근 하면 빈 문자열 입 니 다.(1.5.12)
  • $query_string 과 $args
  • $realpath_루트 가 현재 요청 한 문서 루트 디 렉 터 리 나 별명 의 실제 경 로 는 모든 기호 연결 을 실제 경로 로 변환 합 니 다.
  • $remote_addr 클 라 이언 트 주소
  • $remote_port 클 라 이언 트 포트
  • $remote_user HTTP 기본 인증 서비스 에 사용 할 사용자 이름
  • $request 는 클 라 이언 트 의 요청 주 소 를 대표 합 니 다
  • $request_body
  • 클 라 이언 트 의 요청 주체
  • 이 변 수 는 location 에서 사용 할 수 있 으 며 요청 주 체 를 proxy 를 통 해pass, fastcgi_pass, uwsgi_pass, 그리고 scgi패스 는 다음 프 록 시 서버 에 전 달 됩 니 다.

  • $request_body_file 클 라 이언 트 요청 주 체 를 임시 파일 에 저장 합 니 다.파일 처리 가 끝 난 후 이 파일 은 삭제 해 야 합 니 다.이 기능 중 하나 가 필요 하 다 면 client 를 설정 해 야 합 니 다.body_in_file_only。다음 파일 을 백 엔 드 프 록 시 서버 에 전달 하려 면 request body 를 사용 하지 않 으 면 proxy 를 설정 해 야 합 니 다.pass_request_body off,fastcgi_pass_request_body off, uwsgi_pass_request_body off, or scgi_pass_request_body off 。
  • $request_completion 이 요청 에 성공 하면 값 은 "OK" 입 니 다. 요청 이 완료 되 지 않 았 거나 요청 이 한 범위 에서 요청 한 마지막 부분 이 아니라면 비어 있 습 니 다.
  • $request_filename 현재 연결 요청 파일 경 로 는 루트 나 alias 명령 과 URI 요청 으로 생 성 됩 니 다.
  • $request_length 요청 의 길이 (요청 한 주소, http 요청 헤더 와 요청 주체 포함) (1.3.12, 1.2.7)
  • $request_method HTTP 요청 방법 은 보통 "GET" 또는 "POST"
  • 입 니 다.
  • $request_time
  • 클 라 이언 트 가 요청 한 사용 시간 (1.3.9, 1.2.6) 을 처리 합 니 다.
  • 클 라 이언 트 의 첫 번 째 바이트 부터 시간 을 잽 니 다.

  • $request_uri 이 변 수 는 클 라 이언 트 요청 파 라 메 터 를 포함 하 는 원본 URI 와 같 습 니 다. 수정 할 수 없습니다. $uri 변경 또는 재 작성 URI 를 보십시오. 예 를 들 어 "/ cnphop / test. php? arg = freemouse" 와 같은 호스트 이름 은 포함 되 지 않 습 니 다.
  • $scheme 에서 요청 한 웹 프로 토 콜, "http" 또는 "https"
  • $sent_http_name
  • 임의의 http 응답 헤드 필드 를 설정 할 수 있 습 니 다.
  • 변수 이름 의 후반 부 'name' 은 임의의 응답 헤드 필드 로 바 꿀 수 있 습 니 다. 응답 헤드 Content - length 를 설정 하려 면 '-' 을 밑줄 로 바 꾸 고 대문자 로 소문 자로 바 꿀 수 있 습 니 다. 예 를 들 어 $senthttp_content_length 4096 이면 됩 니 다.

  • $server_addr 서버 쪽 주 소 는 Liux 시스템 커 널 에 접근 하지 않도록 ip 주 소 를 설정 파일 에 미리 설정 해 야 합 니 다.
  • $server_name 서버 이름, www. cnphp. info
  • $server_port 서버 포트
  • $server_protocol 서버 의 HTTP 버 전 은 보통 "HTTP / 1.0" 또는 "HTTP / 1.1"
  • 입 니 다.
  • $status HTTP 응답 코드 (1.3.2, 1.2.2)
  • $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, $tcpinfo_rcv_space 클 라 이언 트 TCP 연결 에 대한 구체 적 인 정보
  • $time_iso 8601 서버 시간의 ISO 8610 형식 (1.3.12, 1.2.7)
  • $time_로 컬 서버 시간 (LOG 형식) (1.3.12, 1.2.7)
  • $uri 요청 의 현재 URI (요청 인자 없 이 $args 에 있 음) 는 브 라 우 저 에서 전달 하 는 $request 와 다 를 수 있 습 니 다.uri 의 값 은 내부 방향 을 바 꾸 거나 index 명령 을 사용 하여 수정 할 수 있 습 니 다. $uri 는 호스트 이름 을 포함 하지 않 습 니 다. 예 를 들 어 "/ foo / bar. html".
  • 좋은 웹페이지 즐겨찾기