E D R , A S I H C RSS

URL escape code

last modified: 2015-11-02 16:47:28 by Contributors

특수문자 URL 이스케이프 코드
space %20 ( %28 : %3A [ %5B ` %60
! %21 ) %29 ; %3B \[1] %5C a~z %60~7A
" %22 * %2A < %3C ] %5D { %7B
# %23 + %2B = %3D ^ %5E | %7C
$ %24 , %2C > %3E - %5F } %7D
% %25 - %2D ? %3F ~ %7E
& %26 . %2E @ %40
' &27 / %2F A~Z %40~5A

퍼센트 인코딩이라고 불리며 URL Encoding에 사용된다. % 기호 뒤에 아스키 코드의 hex(16진수)값을 붙여준 것.

URL은 스페이스(space)를 포함할 수 없기 때문에, 스페이스는 %20으로 대체되는 것이 보통이다. 지금 웹 브라우저의 주소창을 확인하면 "…/URL escape code"가 아닌, "…/URL%20escape%20code"라고 되어 있을 것이다. URL escape code가 사용되는 가장 흔한 예.[2]

물음표(?)와 샵(#)은 URL에서 특별하게 처리되는 문자이며, 모니위키에서도 이를 URL 문자로 인식하게 된다. 즉 다음과 같이 링크를 걸면 ? 및 # 문자 앞 부분만 페이지 이름으로 인식이 되며, ?/# 문자 뒷 부분은 URL 요소로 인식이 된다.
FrontPage?action=editFrontPage#s-1

URL에서 특별히 처리되는 # 및 ? 기호를 페이지 이름에 사용하고자 하는 경우에는 이러한 문제를 피하기 위해 퍼센트 인코딩을 사용해야 한다. 즉 모니위키 경우, 문서의 URL 뒤에 ?action=edit 을 붙이면 항목을 편집할 수 있는데, 항목명에 물음표 기호가 있는 경우에는 이러한 기능과 충돌이 된다.[3] 이 때문에 페이지 이름에 물음표 기호가 포함되어 있다면 물음표 ? 기호에 대응하는 퍼센트 인코딩인 %3F로 바꿔줘야 링크를 걸 수 있다.

예를 들면
[[도대체 왜%3F인구단]] => 대체 왜?인구단
[[도대체 왜%3F인구단]] => 도대체 왜%3F인구단
[[도대체 왜%3F인구단]] => 도대체 왜?인구단

물음표(?) %3F 이외에도 #은 %23로 바꿔야만 정상적으로 링크를 걸 수 있다.

항목명이 영단어인데 그것이 매크로 명령과 겹칠 경우에는 알파벳도 URL escape code로 풀어주어야 하는 수가 있다. 항목명 GOTO로 가기 위해 "GOTO([[[[%47OTO|GOTO]])"처럼 링크를 걸어주면 충돌을 피할 수 있다. 단순히 영문명의 매크로 대신에 링크를 거는 경우에는 모니위키의 ["GOTO"]같은 확장 연결문법을 쓸 수도 있다.

리그베다 위키에서는 링크를 걸 때 항목명의 특수문자를 URL escape code로 풀어주거나, 다른 식으로 신경을 써 주어야 하는 경우 항목에 다음 틀이 붙는다.

[[Include(틀:링크시 주의)]]
주의 : 기술적인 문제로 인해 이 문서로 오는 링크를 만들 때 주의를 요합니다.

기술적인 문제로 인해 다른 문서에서 이 문서로 오는 링크를 만들 때 [[문서명]]을 사용할 수 없거나, 특별한 처리를 필요로 합니다. [[문서명|]] 또는 [[|문서명]]을 이용해주세요. 단, 제목에 특수문자가 들어가는 문서는 그 자리에 퍼센트 코드값을 넣어야 할 수 있습니다.(예: [[C%23|C#]]) 기술적인 문제가 해결되면 이 틀을 제거해 주세요.

----
  • [1] 역슬래시(뒤집은 /). 일부 PC에 따라 원화 기호로도 보일수 있다.
  • [2] 이외에도 항목명이 한글인 경우 크롬에서는 한글로 보이지만, IE에서는 한글이 URL escape code로 바뀌어 있는 경우 등이 있다.
  • [3] '도대체 왜?인구단'같은 항목의 경우, 위키는 '도대체 왜'까지만 항목명으로 인식하고 ? 이후의 '인구단'을 쿼리 스트링으로 인식한다.
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2015-11-02 16:47:28
Processing time 0.0603 sec