Internet Information Service
-
(3) IIS 서비스 설정하기2009.03.28
-
(2) IIS 서비스 설정하기2009.03.23
(3) IIS 서비스 설정하기
HTTP Status code (상태 코드)
HTTP 상태 코드는 웹 서버가 웹 브라우저의 요청을 수신하여 처리한 결과를 나타내는 3자리로 구성된 코드이다. 다음과 같이 5종류의 상태코드로 분류하고 있다.
[표 1] HTTP 상태 코드 분류
상태 코드 | 의미 | 설명 |
---|---|---|
1xx | 정보 제공 메시지 (Informational) | 클라이언트의 요청이 접수되어 처리되고 있음을 알려준다. |
2xx | 성공 (Success) | 요청의 처리가 성공하였음을 알려준다. |
3xx | 리다이렉션 (Redirection) | 사용자 요구를 처리하기 위해 추가적인 처리가 필요하다. |
4xx | 클라이언트 에러 (Client error) | 클라언트의 요청이 불완전하여 잘못되었거나, 구문 오류, 기타 클라이언트의 오류가 발생하여 요청 수행을 실패하였다. |
5xx | 서버 에러 (Server error) | 서버 에러가 발생하여 요청을 처리할 수 없다. |
[표 2] HTTP/1.1 상태 코드
상태 코드 | 의미 | 설명 |
---|---|---|
100 | Continue | 클라이언트는 요청의 전송을 계속 진행한다. |
101 | Switching Protocols | 서버는 Upgrade 헤더 필드에 명시된 프로토콜로 교환하기 위한 클라이언트 요청에 따르고 있다. |
200 | Ok |
클라이언트의 요청이 성공적이었으며, 서버는 요청한 데이터를 포함하여 응답한다. HEAD 요구한 자원에 상응하는 Entity-Header 필드는 Message-Body 없이 응답에 포함되어 발송된다. |
201 | Created |
클라이언트의 요청이 성공적이었으며, 자원을 서버내에 만들었다. PUT 메소드에 대한 전형적인 응답이다. |
202 | Accepted | 클라이언트가 요청을 받아들이기만 했을 뿐 아직 완료되지 않은 상태이다. |
203 | Non-Authoritative Infomation | 요청이 성공했지만 서버가 리턴한 정보의 일부가 자원과 관계 있는 원래 서버가 아닌 제3자로부터 왔다. |
204 | No Content | 응답할때 주어지는 헤더이나 응답된 실제 내용이 없다. |
205 | Reset Content | 새로운 문서가 없더라도 브라우저에서 창을 초기화하고, 문서를 새로 표시한다도록 클라이언트에게 응답한다. |
206 | Partial Content | 서버가 부부적인 GET 요청을 성공적으로 수행했음을 응답한다. |
300 | Multiple Choices | 요청된 문서가 여러 곳에 있을 때 어떤 문서를 원하는지를 클라이언트가 선택할 수 있도록 한다. |
301 | Moved Permanently | 요청한 자원이 새로운 URI로 영구히 이동했다. |
302 | Found | 요청한 자원이 일시적으로 다른 URI를 사용하고 있다. |
303 | See Other | 요청에 대한 응답을 서버가 지정한 다른 URL을 통해 가져올 수 있다. |
304 | Not Modified | 웹 브라우저의 캐시에 들어있는 문서가 최신 문서이니 그것을 그대로 사용하라는것을 나타낸다. |
305 | Use Proxy | 요청된 자원은 프록시를 통해서만 사용해야 한다. |
306 | (unused) | 사용하지 않음. |
307 | Temporary Redirect | 요청한 URI가 일시적으로 옮겨졌다. |
400 | Bad Request | 클라이언트의 요청에 오류가 있을 경우 사용하는 일반적인 응답이다. |
401 | Unauthorized | 클라이언트가 자원에 접근하는 권한을 얻지 못했다. 인증을 통과하지 못했을 경우 사용하는 응답이다. |
402 | Payment Required | 구현 안됨. |
403 | Forbidden | 서버가 요청을 거부하였다. 인증과 관련 없는 일반적인 '거부'로써 특정 클라이언트의 접근 제한을 걸면 클라이언트의 모든 요청은 403 응답을 얻게 된다. 일반적으로 기본 문서가 없을 경우 볼 수 있는 응답이다. |
404 | Not Found | 서버의 자원을 찾을 수 없다. |
405 | Method Not Allowed | 클라이언트가 사용한 메소드가 이 URI에 대해 지원되지 않는다. |
406 | Not Acceptable | 클라이언트가 지정한 URI는 존재하지만 클라이언트가 원하는 형식이 아님을 의미한다. |
407 | Proxy Authentication Required | 401과 유사하지만 클라이언트는 프록시의 인증이 선행된다. |
408 | Request Timeout | 클라이언트의 모든 요청이 서버에 의해 지정한 시간 동안 처리되지 않았음을 의미한다. |
409 | Conflict | 다른 요청이나 서버의 구성과 충돌이 발생하였다. |
410 | Gone | 요청된 문서가 사라지고, 새로운 주소는 알 수 없음을 나타낸다. |
411 | Length Required | 요청에 Content-Length 헤더를 추가해야 함을 클라이언트에게 통지한다. |
412 | Precondition Failed | 하나 또는 그 이상의 Request-Header에 명시된 조건에 의해 요청을 평가하여 조건을 만족하지 못했음을 표시한다. |
413 | Request Entiy Too Large | 클라이언트의 요청이 너무 커서 서버가 요청을 거부했다. |
414 | Request-URI Too Long | 클라이언트가 요청한 URI의 길이가 처리할 수 있는 길이보다 길어서 요청 수행을 거부하였다. |
415 | Unsupported Media Type | 서버가 지원하지 않는 미디어 형태를 사용하는 실체를 포함하고 있어서 요청을 처리할 수 없다. |
416 | Requested Range Not Satisfiable | 클라이언트가 잘못된 수치의 범위를 지정하고 있는 Range 헤더를 포함한다. |
417 | Expectation Failed | 요청이 서버가 만족시킬 수 없는 Expect 헤더를 가지고 있다. |
500 | Internal Server Error | 서버의 문제로 정상적인 수행을 할 수 없음을 표시한다. |
501 | Not Implemented | 해당 요청을 수행하는 방법을 서버가 모른다. |
502 | Bad Gateway | 게이트웨이나 프록시 역할을 수행하는 서버가 클라이언트를 대신해 접속한 다른 서버에서 잘못된 응답을 받았다. |
503 | Service Unavailable | 내부적인 원인으로 잠시 요청의 처리를 수행할 수 없다. |
504 | Gateway Timeout | 게이트웨이나 프록시 역할을 수행하는 서버가 클라이언트를 대신해 접속한 다른 서버에서 특정 시간동안 응답을 보내지 않았다. |
505 | HTTP Version Not Supported | 요청에 사용한 HTTP 버전을 서버가 이해하지 못했다. |
이 글은 스프링노트에서 작성되었습니다.
(2) IIS 서비스 설정하기
새 웹 사이트 만들기
[그림1] 새 웹 사이트 만들기
웹 사이트의 단축 메뉴를 이용하여 새로 만들기 - 웹 사이트 명령을 실행한다.
[그림2] 웹 사이트 만들기 마법사
[그림3] 웹 사이트 설명 기입하기
웹 사이트의 설명을 기입한다.
[그림4] IP 주소 및 포트 설정
호스트에 할당된 어떤 IP 주소로든 웹 사이트로 연결하려면 (지정하지 않은 모든 IP)를 사용하고 특정 IP 주소를 지정하려면 직접 IP 주소를 입력한다. 기본 포트이외의 포트 사용시도 1024번 이상의 포트 번호를 입력하여야 한다. 다수의 웹 사이트를 설정시 웹 사이트별로 호스트 이름을 입력한다.
[그림5] 웹 사이트 경로 지정
웹 문서가 존재하는 디렉터리를 등록한다.
[그림6] 웹 사이트 액세스 권한
웹 사이트의 컨텐츠를 보여주기 위한 권할을 설정한다.
[그림7] 웹 사이트 만들기 마법사 마침
웹 사이트 만들기 마법사 멈춤
[그림8] 추가된 새 웹사이트
이 글은 스프링노트에서 작성되었습니다.
(1) IIS 서비스 설정하기
IIS(Internet Information Service)
제공 기능
World Wide Web 서버 (HTTP)
파일 전송 서버 (FTP)
뉴스 그룹 서버 (NNTP)
전자 우편 서버 (SMTP, POP3)
설치하기
[그림1. 사용자 서버 관리 - 역할 추가]
사용자 서버 관리 도구를 이용하여 IIS의 설치를 위해 응용 프로그램 서버 역할을 추가한다.
[그림2. 서버 구성 마법사의 실행]
사용자 서버 관리 도구는 역할을 추가하기 위해 서버 구성 마법사 도구를 실행시킨다.
[그림3. 응용 프로그램 서버 역할 추가]
응용 프로그램 서버 항목을 선택하여 추가를 진행한다.
[그림4. 추가 설치 옵션]
IIS는 웹 서비스외에 추가로 프론트 페이지나 비주얼 스튜디오와 같은 웹저작 툴과 연동하기 위한 옵션과 닷넷 실행 환경을 추가로 설치할 수 있다. 여기서는 기본적인 웹 서비스만을 설치할 목적이므로 옵션은 꺼두도록 한다.
[그림5. IIS 설치 및 구성 중]
[그림6. 구성 요수 마법사의 실행]
IIS의 설치를 위한 구성 요소 마법사가 실행된다.
[그림7. 설치 완료]
[그림8. 사용자 서버 관리에 응용 프로그램 서버 역할 추가]
응용 프로그램 서버의 역할이 설치되었다.
웹 서비스 설정하기
[그림9. IIS 기본 설정]
현재 추가적인 구성 요소를 선택하지 않은 상태이므로 기본 웹 사이트는 로컬 서버에 지정된 모든 IP 주소의 TCP 80번 포트로 응답하도록 구성되어 있다.
인터넷 정보 서비스 전역 구성 옵션
[그림10. 전역 구성 옵션의 지정]
모든 IIS 서비스에 공통적으로 적용되는 설정을 구성하기 위해 인터넷 정보 서비스 관리 도구의 콘솔 트리의 컴퓨터 이름을 선택하고 속성을 선택한다. IIS 실행 중 메타베이스의 직접 편집이나 ASCII 코드외의 사용 언어를 로그 파일에 지원하거나 MIME 형식을 지정할 수 있는 등록 정보 창이 표시된다.
웹 서비스 구성하기
마스터 등록 정보 구성하기
모든 웹 사이트의 전역 기본값의 구성을 위해 인터넷 정보 서비스의 웹 사이트를 선택하여 동작 메뉴에서 속성을 선택하거나 그림과 같이 마우스 오른쪽 단추를 이용하여 속성 명령을 실행한다. 모든 웹 사이트에 공통적으로 지정할 전역 설정을 지정하거나 개별 웹 사이트의 등록 정보에는 표시되지 않는 서비스 탭을 통해 하위 버전의 IIS 설정을 지원하거나 HTTP 요청에 대한 응답을 압축하는 기능을 켤 수 있다. HTTP 압축 기능은 정적인 파일이나 동적으로 만들어진 컨텐츠를 압축하여 정적인 파일의 경우 지정된 임시 디렉터리 경로에 저장하며 동적으로 만들어진 컨텐츠는 해당 디렉터리에 압축되어 저장 공간을 절약할 수 있다.
[그림11. 인터넷 정보 서비스 마스터 등록 정보 설정]
웹 사이트의 등록 정보는 저장시 개별 웹 사이트의 구성이 존재할 경우 개별 웹 사이트에 적용할 것인지를 묻게 된다.
[그림12. 전역 등록 정보의 설정과 개별 사이트 등록 정보와 충돌]
IIS는 인터넷 회선의 전송량에 맞추어 대역폭의 양을 강제할 수 있으며 이를 통해 적절할 대역폭을 지정하거나 웹 사이트 개발시 느린 링크로 얼마나 잘 작동하는지 테스트할 용도로 사용할 수 있다. [표1]의 수치 값을 통해 회선에 따른 일반적인 전송 대역폭을 지정할 수 있다.
[그림13. 성능 탭을 이용한 대역폭 조절]
[표1. 일반적인 대역폭 환산표]
연결 방식 | 대역폭, 초당 비트 수 | 대역폭, 초당 킬로바이트 수 |
---|---|---|
56K | 56,000 | 7 |
64K | 64,000 | 8 |
128K | 128,000 | 16 |
256K | 256,000 | 32 |
512K | 512,000 | 64 |
T1 | 1,544,000 | 193 |
10BASE-T | 10,000,000 | 1,250 |
T3 | 44,736,000 | 5,592 |
100BASE-T | 100,000,000 | 12,500 |
이 글은 스프링노트에서 작성되었습니다.