기초 다지기

URL encoding을 해야하는 이유

hongjw 2020. 1. 26. 02:36

URL encoding은 문자나 특수문자를 웹 서버와 브라우저에서 보편적으로 허용되는 형식으로 변화하는 메커니즘으로,

URL에 쓰인 텍스트를 모든 브라우저에서 똑바로 전송하기 위해 존재하는 것이다.

 

URL은 아스키코드를 이용해 인터넷을 통해서만 전송할 수 있다.

그러나 URL에 아스키코드외의 문자가 포함될 수 있기 때문에 유효한 아스키코드 형식으로 변환해야 한다.

예를 들어, GET 메소드로 id=?hong, pw=&zone의 데이터를 보내기 위해서는 http://example.com/?id=%3Fhong&pw=%26zone 으로 전송되어야 서버에서도 정상적으로 데이터를 해석하여 처리할 수 있다.

 

URL encoding 방식은 입력된 문자를 아스키코드표(ASCII table)에서 매칭되는 hex 값 앞에 "%"를 붙이면 된다.

-> URL encoding이 필요한 대표적인 예시

공백 : %20

탭 : %09

? : %3F

# : %23

& : %26

= : %3D

 

또한, 아스키코드에 포함되지 않은 한글은 항상 URL encoding을 해줘야 한다.

ex) 보안 study -> %EB%B3%B4%EC%95%88%20study

 

 

 

참고 링크

> https://trustit.tistory.com/159

> https://blog.naver.com/awesomedad/220748168859

 

'기초 다지기' 카테고리의 다른 글

.htaccess 파일이란 ?  (0) 2020.03.11
PHP addslashes(), magic_quotes_gpc  (0) 2020.02.25
해시함수  (0) 2020.02.02
2진수, 8진수, 16진수  (0) 2020.02.02
정규식 알아두기  (0) 2020.01.26