국제 콘텐츠를 지원하기 위해, 서버는 클라이언트에게 각 문서의 문자와 언어를 알려줘서, 클라이언트가 올바르게 문서를 이루고 있는 비트들을 문자들로 풀어내고, 올바르게 처리해서 사용자에게 콘텐츠를 제공해줄 수 있도록 할 필요가 있다.
HTTP 차셋 값은, 어떻게 엔터티 콘텐츠 비트들을 특정 문자 체계의 글자들로 바꾸는지 말해준다. 각 차셋 태그는 비트들을 글자들로 변환하거나 혹은 그 반대의 일을 해주는 알고리즘을 명명한다.
문서를 이루는 비트들은, 특정 코딩된 문자집합의 특정 문자로 식별될 수 있는 문자 코드로 변환된다.
문자 코드는 코딩된 문자집합의 특정 요소를 선택하기 위해 사용된다.
만약 클랑이너트가 잘못된 charset 매개변수를 사용한다면, 클라잉너트는 이상한 깨진 글자를 보여주게 될 것이다.
특정 문자 인코딩과 특정 코딩된 문자집합의 결합을 MIME 차셋이라고 부른다.
HTTP는 표준화된 MIME 차셋 태그를 Content-Type과 Accept-Charset 헤더에 사용한다. MIME 차셋의 값은 IANA에 등록되어 있다.
웹 서버는 클라이언트에게 MIME 차셋 태그를 charset 매개변수와 합께 Content-Type 헤더에 담아 보낸다.
만약 문자집합이 명시적으로 나열되지 않았다면, 수신자는 문서의 콘텐츠로부터 문자집합을 추측하려 시도한다.
대부분의 클라이언트는 모든 종류의 문자 코딩과 매핑 시스템을 지원하지는 않는다.
HTTP 클라이언트는 서버에게 정확히 어떤 문자 체계를 그들이 지원하는지 Accept-Charset 요청 헤더를 통해 알려준다. Accept-Charset 헤더의 값은 클라이언트가 지원하는 문자 인코딩의 목록을 제공한다.
여덟 개의 전자 문자 체계 용어이다.
MIME 차셋 태그는 문자집합을 의미하는 것이 결코 아니다 MIME 차셋 값은 데이터 비트를 고유한 문자의 코드로 매핑하는 알고리즘의 이름이다.
이것은 문자 인코딩 구조와 코디왼 문자집합의 개념을 합친 것이다.
문자는 쓰기의 기본적인 구성요소다. 하나의 문자는 하나의 알파벳 글자, 숫자, 구두점, 표의문자, 수학 기호, 혹은 그 외에 다른 쓰기의 기본 단위를 표현한다.
글리프는 각 글자를 그리는 특정한 방법이다. 각 문자는 미적인 양식과 스크립트에 따라 여러 가지 글리프를 가진다.
코딩된 문자집합은 보통 코드 번호로 인덱싱된 배열로 구현된다.
몇 가지 중요한 코딩된 문자집합 표준
문자 인코딩 구조들은 숫자로 된 문자 코드를 콘텐츠 비트들로 변환하고 다른 쪽에서는 그들을 다시 문자 코드로 환원한다. 문자 인코딩 구조는 크게 세 종류로 분류할 수 있다.
인코딩 구조
언어 태그는 언어에 이름을 붙이기 위한 짧고 표준화된 문자열이다.
Content-Language 엔터티 헤더 필드는 엔터티가 어떤 언어 사용자를 대상으로 하고 있는지 서술한다. 그러나 단지 여러 언어가 하나의 엔터티에 동시에 사용되었다고 해서 반드시 여러 언어 사용자들을 대상으로 하고 있음을 의미하는 것은 아니다.
HTTP는 우리에게 우리의 언어 제약과 선호도를 웹 서버에 전달할 수 있게 해준다.
언어 태그는 다음을 표현하기 위해 사용될 수 있다.
언어 태그는 하이픈으로 분리된 하나 이상의 서브태그로 이루어져 있다.
모든 태그는 대소문자가 구분되지 않는다. 관용적으로 언어를 나타낼 때는 소문자를 사용하고, 국가를 나타낼 때는 대문자를 사용한다.
첫 번째와 두 번째 언어 서브태그의 값은 여러 가지 표준 문서와 그것들을 관리하는 조직에 의해서 정의된다.
첫 번째 서브태그는 보통 ISO 639 표준 언어 집합에서 선택된 표준화된 언어 토큰이다.
두 번째 서브태그는 보통 ISO 3166 국가 코드와 지역 표준 집합에서 선택된 표준화된 국가 토큰이다.
8자 이하의 알파벳과 숫자로 이루어져야 한다.
웹브라우저 프로필에서 선호 언어를 설정할 수 있다.
최근에 잘 사용되지 않음