봉봉의 개인 블로그

절대 경로와 상대경로의 차이점 본문

관련 지식

절대 경로와 상대경로의 차이점

봉봉이네 2017. 4. 4. 23:10

1. 절대경로

이미지의 절대적인 경로로 지정하는 방식입니다.

<img src="http://www.homejjang.com/images/tree00.gif>

<img src="c:home\images\tree00.gif">

절대경로는 고유한 경로입니다. 위의 예처럼 http://가 포함되어 있는 절대경로를 경로명만 웹브라우저 주소줄에 입력해도 그 이미지가 그대로 나옵니다.

보통 홈페이지 제작시 자신의 컴퓨터에서 HTML 문서를 만들고 이를 FTP를 통해서 웹서버에 일괄적으로 올립니다. 이런 경우 절대경로로 이미지를 삽입했다면 모두 고쳐줘야 하는 불편이 있습니다.

그래서 일반적으로 절대경로보다는 상대경로를 이용해서 이미지를 삽입하는게 좋습니다.

2. 상대경로

상대경로는 이미지를 삽입할 HTML 문서를 기준으로 경로를 인식하는 방법입니다.

이미지 파일이 HTML 문서와 같은 폴더에 있는지, 상위 폴더에 있는지, 하위 폴더에 있는지를 따져보고 경로를 지정해줘야 합니다.

먼저 HTML 문서와 이미지 파일이 같은 폴더에 저장되어 있다면 이미지 파일명만 적어주면 되므로 문제가 되지 않습니다. 그러나 다른 폴더에 있다면 이 다른폴더의 위치를 지정해 주는 방법을 이해해야 합니다.

하위폴더로 이동하는 방법은 하위폴더명를 적어주고 슬래쉬(/)를 입력해 주면 됩니다.

보다 간단하게 설명하기 위해서 html 문서는 index.html이라고 하고, 여기에 삽입해야 할 이미지 파일명은 logo.gif라고 가정하겠습니다.

index.html 파일이 c:home 폴더에 위치하고있고 logo.gif 파일은 c:home 폴더의 하위폴더인 images 폴더에 위치하고 있으면 <img scr="images/logo.gif">와 같이 지정하면 됩니다. 현재 폴더의 하위폴더인 images 폴더에 logo.gif파일이 위치하고 있다는 표시죠.

상위폴더로 이동하는 방법은 ../ 이와같이 표현합니다.

index.html 파일이 c:home\doc 폴더에 위치하고있고 logo.gif 파일은 c:home\images 폴더에 위치하고 있으면 <img scr="../images/logo.gif"> 이와 같이 지정합니다.

../ 를 통하여 일단 상위폴더로 나간다음(c:\home 폴더) 다시 images 폴더로 들어가는 거죠.

절대경로와 상대경로를 처음 접하면 이해하기 힘든 내용이지만 경로를 지정하는 방법은 컴퓨터를 사용하는데 기본적인 것이기 때문에 사용하다 보면 자연스럽게 이해하게 됩니다.


1. 절대경로

- 어떠한 웹페이지나 파일이 가지고 있는 고유한 경로를 말한다.

- 예를들어 http://www.google.com, C:\users\document\untitled.jpg 등을 모두 절대 경로라고한다.

- 다르게는 '그 위치'라는 개념이라고 말할 수 있는데 주소라고 생각하면 이해하기 더 쉽다.

- 음... 다시한번 예를 들어 내가 만약 d:\file 또는 c:\file\img.jpg 등 절대 경로를 알고 있으면 그곳으로 바로 이동하거나 그곳에 있는 파일을 바로 실행 가능하다는 것. 

- 따라서, 그건 거기에 있으니깐 실행해(가, 가져와 등등)이 된다.


2. 상대경로

- 상대경로를 풀어서 보면 '현재 위치한 곳을 기준'으로 해서 '그곳의 위치'이다.

- 다시한번 설명하자면 (Web이라고 기준하에) html 파일이 위치한 폴더를 기준으로 상대적인 경로라는 것.

- 예를 들어 C:\users\documents\sehee라는 폴더 밑에 A라는 폴더와 B라는 폴더가 있다고 가정하고, 

   A라는 폴더안에 index.php 파일이 위치한다고 가정하고 현재 내가 B라는 폴더에 위치한다면, 

   A폴더 안에 index.php파일을 가져오기 위해서는 B라는 폴더를 기준으로 계산을 한다.

   따라서 ../A/index.php이라고 하여 index.php로 간다는것.

- 여기서 참고할 것!

   / : 루트

   ./ : 현재 위치

   ../ : 현재 위치의 상단 폴더

ex) index.php가 C:\index\a에 위치한다면,

      여기서 / 는 C:

               ./ 는 a

              ../ 는 index라는 것.


- 3가지를 간단히 정리하자면, 
   1  '/'    -> 가장 최상의 디렉토리로 이동한다.(Web root)
   2  './'   -> 파일이 현재 디렉토리를 의미한다.
   3  '../'  -> 상위 디렉토리로 이동한다.

- 만약 두단계 상위 디렉토리로 이동하려면
   '../../' 이렇게 사용하면 된다.


Comments