2017-02-05 1 views
0

내 도메인 이름을 변경할 수 있으므로 절대 경로를 사용자로 지정하고 싶지 않습니다. 상대 경로로이 위치에 어떻게 연결할 수 있습니까?상대 경로로 내비게이션

https://[My Website Name].com/dir1/dir2/dir3/page.html 

또는이 나쁜 아이디어입니까?

업데이트 : 즉, 내 웹 사이트의 홈 페이지 (또는 다른 페이지)를 상대 경로로로드하려면 어떻게해야합니까? 리소스에 액세스하기 위해 이미 상대 경로를 사용하고 있지만 탐색에 대해 구체적으로 알고 싶습니다.

+0

모든 이미지와 오디오에 상대 경로를 사용하지만이 질문은 탐색과 관련하여 완전히 다릅니다. – Lumo5

+0

* "모든 이미지와 오디오에 상대 경로를 사용하지만이 질문은 탐색과 관련하여 완전히 다릅니다."* ** 아니요, 그렇지 않습니다. 하이퍼 링크를 통한 탐색은 이미지 또는 다른 리소스를 참조하는 것과 똑같은 방식으로 작동합니다. 그래서 우리는 "자원"이라는 단어를 사용합니다. 리소스는 브라우저가로드해야하는 모든 유형의 외부 요소입니다. ** –

답변

0

처음에는 같은 도메인 내에있는 리소스에 연결할 때 절대 경로를 사용하면 안됩니다. 물론, 도메인 이름을 변경하면 도움이 될 것이지만 더 중요한 것은 절대 경로를 사용하면 사용자 에이전트가 도메인의 IP 주소를 다시 확인해야하므로 시간이 걸리고 당신이하지 않았다면 필요합니다.

사이트 외부에있는 리소스를 참조 할 때는 절대 경로 (http://.....)를 사용해야합니다.

상대 경로를 사용하려면 현재 파일이 디렉토리 구조에있는 위치를 알아야하며 대상 리소스가 어디에 있는지 (상대적으로 말하면) 이해해야합니다. 여기에 몇 가지 규칙이 따를 수 있습니다

대상 자원이 소스 파일과 같은 디렉토리에있는 경우, 경로가 필요하지 않습니다 - 단지 대상 자원의 이름, 즉 넣어 : myFile.html

대상이 만약을 리소스가 as 소스 파일의 하위 디렉토리에있는 경우 소스 파일과 동일한 폴더에있는 디렉토리 이름으로 경로를 시작하고 거기에서 경로를 완성하십시오 (예 : images/myimage.png

대상 리소스가 원본보다 높은 수준의 디렉터리에서 ../을 사용하여 원본의 상위 디렉터리로 이동하십시오. 예를 들어, 현재 파일이있는 디렉토리보다 한 디렉토리 높은 파일을 얻으려면 : ../myFile.html. 두 개 이상의 디렉토리로 이동해야하는 경우 배수를 조합 할 수 있습니다. 즉 ../../myFile.html은 두 개의 디렉토리를 사용하여 파일을 찾습니다.

소스가 전반적인 사이트 구조에서 상당히 멀리 떨어져 있다면 여러 단계 올라 가기보다는 사이트 루트에서 시작하여 아래로 나아가는 것이 더 쉬울 수 있습니다. 이 경우 경로의 시작을 /으로 시작하여 사이트의 루트에서 시작해야 함을 나타냅니다. 예 : /index.html은 사이트의 루트 디렉토리에있는 index.html 파일로 이동한다는 의미입니다.

+0

응답 해 주셔서 감사합니다. 나는 너에게 동의하지만, 네비게이션에 대해 구체적으로 알고 싶었다. 리소스에 대한 상대 경로를 이미 사용하고 있지만 탐색에 대해 알고 싶습니다. 예를 들어 다른 페이지에서 홈 페이지를로드하려면 어떻게해야합니까? 가장 쉬운 방법은 절대 경로를 사용하는 것입니다. 그러나 어떻게 상대 경로를 통해 동일한 결과를 얻을 수 있습니까? – Lumo5

+0

@ Lumo5 내 대답에 대한 모든 내용이 탐색에 적용되므로 수행하려는 작업을 명확히하십시오. 다른 페이지에서 홈 페이지로 이동하려면 링크가 'Home'이됩니다. 상대 경로는 이미지를위한 것이 아닙니다. 브라우저에로드해야하는 ** 모든 ** 리소스에 적용됩니다. –

+0

오케이.오해와 죄송합니다 답변에 대한 죄송합니다. – Lumo5