퍼센트 인코딩

위키백과 ― 우리 모두의 백과사전.

퍼센트 인코딩URI유니코드를 표현하는 문자 인코딩 방법이다. 이 방법에 따르면 알파벳이나 숫자 등 몇몇 문자를 제외한 값은 옥텟 단위로 묶어서, 16진수 값으로 인코딩한다.

예를 들어, '위키백과'라는 문자는 UTF-8 인코딩에서는 EC 9C 84 ED 82 A4 EB B0 B1 EA B3 BC로 표현되므로,

http://example.com/위키백과.html

라는 URL은 퍼센트 인코딩을 하면

http://example.com/%EC%9C%84%ED%82%A4%EB%B0%B1%EA%B3%BC.html

가 된다.

[편집] 규약

퍼센트 인코딩 규약은 RFC 3986에 정의되어 있다. 이 RFC에 따르면 URI에서 중요하게 사용되는 reserved 문자가 있고, 또한 인코딩이 필요하지 않은 unreserved 문자가 존재한다.

unreserved 문자에는 알파벳(A~Z, a~z), 숫자(0~9), "-", ".", "_", "~"이 있다. 이들 문자는 퍼센트 인코딩을 할 필요가 없고, 인코딩을 안 하는 것을 권장한다.

reserved 문자에는 ":", "/", "?", "#", "[", "]", "@", "!", "$", "&", "'", "(", ")", "*", "+", ",", ";", "="이 있다. 이들 중 일부는 URI에서 중요한 문법적 의미를 가지고 있기 때문에, 그 의미로 사용할 것이 아니라면 반드시 인코딩을 해야 한다.