글 작성자: 써니루루
참고주소 : http://www.coolcheck.co.kr/support/support5View.asp?code=board10&number=9&ref=6&page=1&startpage=1&btitle=용어집

Uniform Resource Locator(URL : RFC 1738)

Uniform Resource Locator(URL:자원 위치 표시자)는 인터넷 상에서 자원들의 위치와 접근 방법을 설명하는 방법입니다.
자원의 위치와 접근을 위한 형식화된 정보의 구문(syntax)과 문법(semantics)을 정의하여 각각의 프로토콜에 대한 인터넷 자원 위치 표시 및 접근을 위한 방식을 제공합니다.

1. 일반적인 URL 구조

일반적인 URL 형식은 다음과 같습니다.
<scheme>://<net_loc>/<path>;<params>?<query>#<fragment>

scheme ":" ::= 구조명(e.g., http, https)
"//" net_loc ::= 네트워크 위치 또는 로그인 정보(e.g., www.host.com, user:password@host.com)
"/" path ::= URL 경로
";" params ::= 오브젝트 파라메터(e.g., ";type=a")
"?" query ::= 쿼리 정보(e.g., "?db=main")
"#" fragment ::= 부위 지정자(e.g., "#top")

구조명은 문자열('a'에서 'z')로 이루어지며, 안전한(safe) 문자인 "$", "-", "_", ".", "+" 들이 허용되고 대/소문자를 구별하지 않습니다.

모든 불안전한(unsafe) 문자들은 부호화 되어야 합니다.
불안전한(unsafe) 문자는 다음과 같습니다.
개행 문자(space), "<", ">", """, "#", "%", "{", "}", "|", "\", "^", "~", "[", "]", "`"
또한, 특정 목적을 위해 예약된 문자인 ";", "/", "?", ":", "@", "=", "&" 들은 부호화가 필요없는 특정 목적에 사용되어 지지 않는한 부호화될것 입니다.

2. 특정 URL 구조

각각의 프로토콜들에서 특정 구조로 URL이 사용되어지며 형식은 다음과 같습니다.
//<user>:<password>:@<host>:<port>/<url-path>
user : 사용자 이름
password : 암호가 있는 경우, 사용자 이름은 콜론(:)으로 분류합니다.
host : 도메인 이름 또는 IP 주소
port : 연결할 포트 번호(일반적으로 기본 포트 번호를 사용합니다.)
url-path : 경로

다음은 각각의 프로토콜에서 사용되는 URL 형식의 사용예입니다.
  • ftp(File Transfer protocol)
        ftp://myname@host.com/etc/motd
        ftp://myname:pass@host.com:21//etc/motd
  • http(Hypertext Transfer Protocol)
        http://host.com:80/path.htm?num=1
  • gopher(The Gopher protocol)
        gopher://host.com:70
  • mailto(Electronic mail address)
        mailto:admin@host.com
  • news(USENET news)
        news:host.com.computer
  • nntp(USENET news using NNTP access)
        nntp://host.com:119/www.host.com.computer/10
  • telnet(Reference to interactive sessions)
        telnet://myname:pass@host.com:23/
  • wais(Wide Area Information Servers)
        wais://host.com:210/db_name
  • file(Host-specific file names)
        file://host.com/dir/
  • prospero(Prospero Directory Service)
        prospero://host.com//pros/name

참고 사이트 :
World Wide Web Consortium(W3C : www.w3c.org)
The Internet Engineering Task Force(IETF : www.ietf.org)
한국정보통신기술협회(TTA : www.tta.or.kr)
인터넷 식별자 포럼(www.uriforum.or.kr)