IIS 서버 변수
IIS 서버 변수는 서버에 대한 정보, 클라이언트와의 연결 및 연결에 대한 현재 요청을 제공합니다. 또한 인바운드 URL 다시 쓰기 규칙을 사용하여 사용자 지정 서버 변수를 설정할 수 있습니다.
참고
이 문서에 나열된 모든 서버 변수를 IIS 8.5 이전 버전의 IIS에서 사용할 수 있는 것은 아닙니다.
서버 변수 | Description |
---|---|
ALL_HTTP | 클라이언트에서 보낸 모든 HTTP 헤더입니다. 헤더는 접두사로 HTTP_ 및 대문자로 표시됩니다. 예를 들어 HTTP_ACCEPT_ENCODING:gzip, deflate, br |
ALL_RAW | 원시 형식으로 클라이언트에서 보낸 모든 HTTP 헤더입니다. 예를 들어 Accept-Encoding: gzip, deflate, br |
APPL_MD_PATH | 애플리케이션의 메타베이스 경로입니다. |
APPL_PHYSICAL_PATH | 애플리케이션의 실제 경로입니다. |
APP_POOL_CONFIG | 임시 IIS 애플리케이션 풀 구성의 실제 경로입니다. |
APP_POOL_ID | 요청을 처리하는 IIS 작업자 프로세스를 실행하는 애플리케이션 풀의 이름입니다. |
AUTH_PASSWORD | 기본 인증을 사용하여 인증하기 위해 클라이언트에서 제공하는 암호입니다. |
AUTH_TYPE | 서버에서 사용자의 유효성을 검사하는 데 사용하는 인증 방법입니다. AUTH_TYPE 값이 포함되어 있고 인증 체계가 기본 또는 통합 Windows 인증 아닌 경우 사용자가 인증되었음을 의미하지는 않습니다. 서버는 ISAPI 필터가 해당 특정 체계를 처리할 수 있기 때문에 기본적으로 지원하지 않는 인증 체계를 허용합니다. |
AUTH_USER | 사용자 이름이 Windows 계정에 매핑되기 전에 클라이언트에서 보낸 권한 부여 헤더에서 파생되는 사용자의 이름입니다. 이 변수는 REMOTE_USER 다르지 않습니다. 들어오는 사용자를 계정에 매핑하는 인증 필터가 웹 서버에 설치된 경우 LOGON_USER 사용하여 매핑된 사용자 이름을 확인합니다. |
CACHE_URL | ISAPI 애플리케이션에서만 사용합니다. 현재 URL의 명확한 이름을 반환합니다. 커널 모드 캐시 무효화 함수와 함께 이 변수의 유니코드 버전을 사용하여 HSE_REQ_VECTOR_SEND 캐시에 배치된 항목을 제거해야 합니다. |
CERT_COOKIE | 문자열로 반환된 클라이언트 인증서의 고유 ID입니다. 전체 클라이언트 인증서에 대한 서명으로 사용할 수 있습니다. |
CERT_FLAGS | 클라이언트 인증서가 있는 경우 bit0은 1로 설정됩니다. 클라이언트 인증서의 인증 기관이 유효하지 않으면 bit0이 1로 설정됩니다(즉, 서버에서 인식된 인증 기관 목록에 없음). 인증서가 유효하지 않음을 나타내는 CERT_FLAGS 비트 1이 1로 설정되면 IIS 버전 4.0 이상이 인증서를 거부합니다. 이전 버전의 IIS는 인증서를 거부하지 않습니다. |
CERT_ISSUER | 클라이언트 인증서의 발급자 필드입니다. |
CERT_KEYSIZE | SSL/TLS 연결 키 크기의 비트 수입니다. |
CERT_SECRETKEYSIZE | SSL/TLS 서버 프라이빗 키의 비트 수입니다. |
CERT_SERIALNUMBER | 클라이언트 인증서의 일련 번호입니다. |
CERT_SERVER_ISSUER | 서버 인증서의 발급자 필드입니다. |
CERT_SERVER_SUBJECT | 서버 인증서의 제목 필드입니다. |
CERT_SUBJECT | 클라이언트 인증서의 제목 필드입니다. |
CONTENT_LENGTH | 요청 본문의 길이입니다. |
CONTENT_TYPE | 요청 본문의 MIME 형식입니다. GET, POST 및 PUT과 같은 연결된 정보가 있는 쿼리와 함께 사용됩니다. |
CRYPT_CIPHER_ALG_ID | 연결을 설정하는 데 사용되는 암호화 암호화 알고리즘입니다. 알고리즘의 16진수 값은 ALG_ID 데이터 형식에 설정됩니다. 예를 들어 256비트 AES(CALG_AES_256)는 입니다 6610 . |
CRYPT_HASH_ALG_ID | MAC(메시지 인증 코드)를 생성하는 데 사용되는 해시 알고리즘입니다. 알고리즘의 16진수 값은 ALG_ID 데이터 형식에 설정됩니다. 예를 들어 MD5(CALG_MD5)는 입니다 8003 . |
CRYPT_KEYEXCHANGE_ALG_ID | 연결을 설정하는 데 사용되는 키 교환 알고리즘입니다. 알고리즘의 16진수 값은 ALG_ID 데이터 형식에 설정됩니다. 예를 들어 CALG_ECDH(키 교환 알고리즘)Diffie-Hellman 타원 곡선은 입니다 aa05 . |
CRYPT_PROTOCOL | 연결을 설정하는 데 사용되는 암호화 프로토콜입니다. 프로토콜의 16진수 값은 SecPkgContext_ConnectionInfo 구조에 설정됩니다. 예를 들어 TLS 1.2 는 입니다 400 . |
DOCUMENT_ROOT | IIS 웹 사이트 디렉터리의 실제 경로입니다. |
FORWARDED_URL | 전달된 URL입니다. |
GATEWAY_INTERFACE | 서버에서 사용하는 CGI 사양의 수정 버전입니다. 형식은 CGI/revision입니다. |
HTTPS | 요청이 보안 채널을 통해 들어오면 ON 을 반환합니다(예: SSL). 또는 안전하지 않은 채널에 대한 요청인 경우 OFF를 반환합니다. |
HTTPS_KEYSIZE | SSL/TLS 연결 키 크기의 비트 수입니다. |
HTTPS_SECRETKEYSIZE | 서버 인증서 프라이빗 키의 비트 수입니다. |
HTTPS_SERVER_ISSUER | 서버 인증서의 발급자 필드입니다. |
HTTPS_SERVER_SUBJECT | 서버 인증서의 주체 필드입니다. |
HTTP_METHOD | 요청을 만드는 데 사용되는 메서드입니다. |
HTTP_URL | 원시 인코딩된 URL입니다. 예를 들어 /vdir/default.aspx?querystring |
HTTP_VERSION | 요청 프로토콜의 이름 및 버전( 원시 형식의 SERVER_PROTOCOL)입니다. |
INSTANCE_ID | IIS 사이트 ID입니다. |
INSTANCE_META_PATH | 요청에 응답하는 IIS instance 대한 메타베이스 경로입니다. |
Instance_name | IIS 사이트 이름입니다. |
LOCAL_ADDR | 요청이 들어온 서버 주소입니다. 이는 컴퓨터에 바인딩된 IP 주소가 여러 개 있을 수 있는 컴퓨터에서 중요하며 사용된 요청의 주소를 확인하려고 합니다. |
LOGON_USER | 웹 서버에 연결된 동안 사용자가 가장하는 Windows 계정입니다. REMOTE_USER, UNMAPPED_REMOTE_USER 또는 AUTH_USER 사용하여 요청 헤더에 포함된 원시 사용자 이름을 봅니다. LOGON_USER 다른 변수와 다른 값을 보유하는 유일한 시간은 인증 필터가 설치된 경우입니다. |
MANAGED_PIPELINE_MODE | 요청을 처리하는 IIS 작업자 프로세스를 실행하는 애플리케이션 풀의 관리 파이프라인 모드입니다. |
PATH_INFO | 클라이언트에서 제공한 경로 정보(예: /vdir/myisapi.dll/zip ). 이 정보는 URL에서 가져온 경우 CGI 스크립트 또는 ISAPI 필터에 전달되기 전에 서버에서 디코딩됩니다.AllowPathInfoForScriptMappings 메타베이스 속성이 true로 설정된 경우(단독 CGI 기능을 지원하기 위해) PATH_INFO 포함 /zip 되며 ASP와 같은 ISAPI 애플리케이션이 중단됩니다. |
PATH_TRANSLATED | PATH_INFO 가상 경로에 매핑되는 실제 경로(예: c:\inetpub\wwwroot\vdir\myisapi.dll )입니다. 이 변수는 ISAPI 애플리케이션을 처리하는 동안 IIS에서 사용됩니다.AllowPathInfoForScriptMappings 메타베이스 속성이 true로 설정된 경우(단독 CGI 기능을 지원하기 위해) PATH_INFO 포함 /zip 되며 ASP와 같은 ISAPI 애플리케이션이 중단됩니다. |
QUERY_STRING | HTTP 요청의 물음표(?) 다음에 문자열에 저장된 정보를 쿼리합니다. |
REMOTE_ADDR | 요청을 만드는 원격 호스트의 IP 주소입니다. |
REMOTE_HOST | 요청을 만드는 호스트의 이름입니다. 서버에 이 정보가 없으면 REMOTE_ADDR 설정하고 이 정보를 비워 둡니다. |
REMOTE_PORT | TCP 연결의 클라이언트 포트 번호입니다. |
REMOTE_USER | 사용자 이름이 Windows 계정에 매핑되기 전에 클라이언트에서 보낸 권한 부여 헤더에서 파생되는 사용자의 이름입니다. 들어오는 사용자를 계정에 매핑하는 인증 필터가 웹 서버에 설치된 경우 LOGON_USER 사용하여 매핑된 사용자 이름을 확인합니다. |
REQUEST_FILENAME | 현재 요청에 대한 실제 경로입니다. |
REQUEST_FLAGS | HTTP_REQUEST 플래그입니다. 예를 들어 HTTP_REQUEST_FLAG_HTTP2 HTTP/2 요청에 대해 플래그가 설정됩니다. |
REQUEST_METHOD | 요청을 만드는 데 사용되는 메서드입니다. |
REQUEST_URI | URI의 경로 절대 부분입니다. 예를 들어 https://contoso.com:8042/over/there?name=ferret 는 를 반환합니다. /over/there |
SCRIPT_FILENAME | 현재 요청의 실제 경로입니다. |
SCRIPT_NAME | 실행 중인 스크립트의 가상 경로입니다. |
SCRIPT_TRANSLATED | 요청된 파일의 확장 길이 경로 입니다(접두사 \\?\ ). |
SERVER_ADDR | 사이트가 바인딩된 IP 주소입니다. |
SERVER_NAME | 서버의 호스트 이름, DNS 별칭 또는 IP 주소는 자체 참조 URL에 나타납니다. |
SERVER_PORT | 요청이 전송된 서버 포트 번호입니다. |
SERVER_PORT_SECURE | 또는 1 를 포함하는 문자열입니다0 . 요청이 보안 포트에서 처리되는 경우 이 입니다 1 . 그렇지 않으면 0 입니다. |
SERVER_PROTOCOL | 요청 정보 프로토콜의 이름 및 수정 버전입니다. 형식은 프로토콜/수정 버전입니다. (정식 형식의 HTTP_VERSION.) |
SERVER_SOFTWARE | 요청에 응답하고 게이트웨이를 실행하는 서버 소프트웨어의 이름 및 버전입니다. 형식은 이름/버전입니다. |
UNENCODED_URL | 인코딩되지 않은 원시 URL입니다. |
UNMAPPED_REMOTE_USER | 사용자 이름이 Windows 계정에 매핑되기 전에 클라이언트에서 보낸 권한 부여 헤더에서 파생되는 사용자의 이름입니다(REMOTE_USER 동일). 들어오는 사용자를 계정에 매핑하는 인증 필터가 웹 서버에 설치된 경우 LOGON_USER 사용하여 매핑된 사용자 이름을 확인합니다. |
URL | 쿼리 문자열 정보가 없는 URL의 기본 부분입니다. |
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기