Engineering Note

[Network] URL의 개념과 구조 본문

Computer Science/Network

[Network] URL의 개념과 구조

Software Engineer Kim 2025. 6. 27. 18:58

URL(Uniform Resource Locator)

: 일반적으로 웹 사이트 주소

: 좀 더 정확하게 웹사이트뿐 아니라 HTML문서, 이미지, 동영상 등 인터넷에 존재하는 모든 자원을 나타내는 경로

: 프로토콜, 도메인 등 여러 요소를 합친 결과물로 구조를 이해해야 함.

URL 구조

URL도 일반 현실에서 사용하는 집주소, 건물 주소 표시 방법처럼 규칙이 있음.

=> 프로토콜://호스트주소:포트번호/경로?파라미터

 

 

'http://www.example.com:80/path/to'

URL 맨 앞부분 : 해당 자원을 얻기위한 통신규약, 프로토콜을 나타냄.


프로토콜 종류
웹:HTTP, HTTPS

이메일:malito

파일전송: FTP

 

URL은 웹뿐 아니라 다른 인터넷상의 자원에도 접근가능하므로, http, https를 제외한 다른 제외한 다른 프로토콜 사용 가능.

 

호스트 주소 => 'http://www.example.com:80/path/to/myfile.html?key1=value&key2=value2' 

: 클라이언트가 접근할 서버 컴퓨터의 주소(IP주소, 도메인)

ex)구글 IP주소: 74.125.24.101, 기억하기 쉬운 문자 형태 주소(도메인):wwwgoogle.com

 

포트(port) => 'http://www.example.com:80/path/to/myfile.html?key1=value&key2=value2'

:항구나 공항처럼 웹 서버 안에서 특정 자원에 접근하기 위해 사용하는 관문

: 우리나라에 인천공항, 김포공항이 있는 것처럼 한 컴퓨터 안에도 여러 포트 존재.

:기본 포트는 생략 가능, 웹 HTTP 기본 포트는 80, HTTPS 기본포트 :443

 

경로(path) => 'http://www.example.com:80/path/to/myfile.html?key1=value&key2=value2'

: 해당자원의 구체적인 위치

: 예시의 경우 myfile.html 파일은 path 폴더 내의 to 폴더

: 최근에는 경로노출 보안 이슈로, 가상 경로를 통해 보여줄 자원 정의 => ex)/myfile이라는 경로에 오면 /path/to 폴더에 myfile.html 파일 전달

 

파라미터 => http://www.example.com:80/path/to/myfile.html?key1=value1&key2=value2

: 웹 서버에 전달해야 할 문구

: 같은 음식이여도 특정 재료를 빼달라고 요청하거나 등의 요청을 추가할 수 있는 것처럼, 특정 자원, 웹페이지를 볼 때도 특정 검색 결과만 보여달라 던지 등 다양한 요구를 처리하는 용도

: URL 상의 물음표(?) 다음에 표시. key1=value1처럼 파라미터명=파라미터값 으로 표시

: URL은 영문자와 숫자 제외 대부분 문자 허용안됨. 한글이 있을 경우 $와 16진수로 인코딩(문자를 적절한 기호로 변환) 필요

 

 

참고 자료 : 그림으로 쉽게 이해하는 웹/HTTP/네트워크(임지영)

Comments