문제

이 질문은 다소 관련이 있습니다 이 질문, 그러나 대답은 ...

나는 항상 HTML과 스크립팅 언어 (PHP/ASP/JSP)에서 상대 경로를 사용하여 모든 것을 참조했습니다. 정당화는 '웹 사이트가 이상한 하위 디렉토리로 호스팅된다면 어떻게해야한다고 생각합니다.' 그러나 내 동료는 우리가 작업중 인 PHP 사이트에 절대 경로를 던지기 시작했습니다. 처음에 나는 끔찍했지만 "왜 안돼? 우리는 우리는 절대 하위 디렉토리로 호스팅됩니다. "요즘 뿌리에서 호스팅되는 것은 드문 일이 아닙니다. 여전히 상대 경로를 "코드"(실제로 마크 업)해야합니까? 나는 아마도 지금까지 구식 연습 일 것이라고 생각합니다.

도움이 되었습니까?

해결책

편집 : 참조 기사의 미스 인터페트를 기반으로 한 개막 단락을 죽였습니다.

나는 항상 다음과 같은 이유로 절대 경로를 사용합니다.

포함 : 1. 템플릿 시스템을 사용하는 경우 문서가 포함 된 디렉토리 구조를 알지 못합니다. 2. 문서가 이동할 경우 포함되지 않고 문서 자체가 될 것이라고 확신 할 수 있습니다. 그것이 포함된다면, 그들은 무슨 일이 일어나고 있는지 아는 나의 누군가를 움직이고 있습니다. 이에 추가하여 절대/상대 경로에 익숙하지 않은 사람이라면 상대보다 절대를 훨씬 더 잘 이해할 수 있습니다.

CSS : (위의 항목뿐만 아니라) 1. 웹 개발자로 편집 할 때 스타일 시트가 문서와 동일한 디렉토리에 없을 때 상대 배경이 사라집니다. 2. 사양에 따라 '네트에 무언가를 넣을 때는 기간 동안 존재해야합니다. 새로운 것을 구축 할 때 새 폴더로 만들거나 새 파일 이름으로 만들고 모든 오래된 문서를 내버려 두었습니다.

다른 팁

분명히. 당신은 당신의 코드가 어디로 끝날지 또는 어떤 목적으로 알지 못합니다.

새 버전의 사이트를 구축한다고 가정하지만 사용자가 전환을 돕기 위해 이전 버전을 "/Classic"하위 디렉토리로 이동합니다. 사이트가 "/new"디렉토리에서 새로운 재조정의 베타 버전을 호스팅하는 곳에서 다른 방법으로도 마찬가지입니다.

처음으로 그것을 제대로 구축하는 것은 번거 로움이 아니며, 언젠가는 스스로 감사합니다.

글쎄, 그것은 아마도 세상의 끝이 아니지만 필요하지 않은 의존성을 구축하고 있습니다.

예를 들어 테스트 하네스에 여러 버전을 하위 디렉토리에 넣거나 하위 디렉토리를 다른 문제를 해결하는 데 도움이된다면 (예를 들어 루트에있는 다른 앱과 이것을 결합하는 등) 찾을 수 있습니다. 더 어렵다.

물론, 당신은 아마 항상 다른 방식으로 그것을 해결할 수있을 것입니다. 그러나 문제는 이제 당신이해야한다는 것입니다.

동적으로 생성 된 페이지를 사용하는 경우 동적으로 URL을 생성하십시오. 예를 들어, JSTL 사용으로u003Cc:url> . 이것은 미래에 페이지를 이동할 수있을뿐만 아니라 URL을 제대로 피할 수 있도록합니다 (진실을 말하십시오. 필요하다).

PHP를 사용하여 페이지를 빌드하는 개인 웹 사이트의 경우 유효한 hrefs를 생성하는 insertpageref (), insertcoderef () 등 몇 가지 방법을 만들었습니다. 결과적으로, 나는 내 사이트 구조가 진화 할 때 주저하지 않습니다.

하위 디렉토리로 이동 한 경우는 상당히 드문 일이라고 말합니다. 훨씬 더 평소는 다른 서버에서 호스팅되고 있습니다. "dev.yourcompany.com"에서 테스트 할 사이트를 작성한 다음 "www.yourcompany.com"으로 이동하여 라이브로 이동하십시오. 이 경우 명백한 이유로 상대 링크를 사용해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top