절대경로와 상대경로의 차이점 이해하기

keon lee·2024년 11월 4일

일반 개발

목록 보기
1/1

파일 시스템에서 특정 파일이나 디렉토리를 참조할 때 사용하는 절대경로상대경로는 개발에 필수적인 개념입니다. 로컬 환경과 서버 환경을 예시로 들며 절대경로와 상대경로의 차이를 쉽게 설명해보겠습니다.


1. 절대경로란?

절대경로는 파일 시스템의 최상위 디렉토리부터 파일이나 폴더까지의 전체 경로를 지정합니다. 이 경로는 위치가 고정적이며, 항상 특정 파일에 대한 정확한 위치를 알려줍니다.

예시

  • 로컬 환경
    만약 파일이 C:\project\images\logo.png에 있다면, 이 경로가 절대경로입니다. 이 경로는 항상 동일하게 해당 파일을 가리킵니다.

  • 서버 환경
    서버에서 프로젝트가 /var/www/html/project에 있다고 가정하면, logo.png 파일의 절대경로는 /var/www/html/project/images/logo.png가 됩니다. 서버에서 일반적으로 /로 시작하는 경로는 절대경로로 취급됩니다.


2. 상대경로란?

상대경로는 현재 작업 중인 디렉토리를 기준으로 파일이나 폴더 위치를 지정합니다. 파일이나 폴더가 프로젝트 내부에서 이동하거나 환경이 달라져도 쉽게 적응할 수 있는 유연한 경로 방식입니다.

예시

  • 로컬 환경
    현재 디렉토리가 C:\project라면, images 폴더 내 logo.png 파일에 접근할 때 .\images\logo.png로 지정할 수 있습니다. 여기서 .현재 디렉토리를 의미합니다.

  • 서버 환경
    서버에서 현재 파일이 /var/www/html/project에 있을 때, images/logo.png로 상대경로를 사용하여 접근할 수 있습니다. 웹 경로에서는 ./를 생략해도 무방합니다.


3. 절대경로와 상대경로의 사용 시기

절대경로가 유리한 경우

  • 파일의 위치가 고정적이어서 시스템 전체에서 공통으로 참조해야 할 때
  • 외부에서 링크를 통해 절대적인 경로가 필요한 경우

상대경로가 유리한 경우

  • 프로젝트 내부 파일의 위치가 자주 변경될 때
  • 다양한 환경에서 동일한 코드를 적용해야 할 때
  • 경로 변경의 유지보수성을 높이고 싶을 때

절대경로와 상대경로 비교 정리

절대경로상대경로
정의루트 디렉토리부터의 전체 경로현재 디렉토리를 기준으로 지정
로컬 환경 예시C:\project\images\logo.png.\images\logo.png
서버 환경 예시/var/www/html/project/images/logo.pngimages/logo.png
사용 시기고정된 경로가 필요한 경우유연한 경로가 필요한 경우

Tip: 웹사이트에서 img/logo.png처럼 상대경로를 사용하면 로컬과 서버 모두에서 동일한 방식으로 작동하므로, 이식성이 높아집니다.

0개의 댓글