사이트 매쉬를 설정하고
폴더를 나눈 뒤 사용할 페이지를 정리하였는데
폴더를 사용하지 않은
views 하위의 index나 errorPage는 디자인 설정이 반영되지만
폴더를 사용하였을 때에는 전혀 반영되지 않았다.
사이트매쉬 필터 문제도 아니었다.
한참을 삽질하다가 이유를 알아냈다.
url에서 절대경로가 아닌 상대 경로를 썼기 때문이다.
나는 부트스트랩의 모든 디자인 파일들을 frontLayer라는 폴더 안에 넣어놨고
그래서 사용할 페이지들의 경로를 frontLayer/.. 처럼 수정해주는 작업을 했었다.
그런데 앞에 /를 붙이지 않아 상대경로로 접근하여 즉, 현재 페이지나 파일을 기준으로 해당경로로 이동하였기 때문에 디자인 파일 적용이 되지 않았던 것이다.
절대 경로를 사용해야 웹어플리케이션의 루트 디렉토리부터 시작할 수 있기 때문에
다시 모든 경로 앞에 /를 붙여주었다.
절대 경로와 상대경로의 차이?
- /frontLayer/assets: 이 경로는 절대 경로로 웹 어플리케이션의 루트(root) 디렉토리에서부터 시작하는 경로이다. 예를 들어, http://example.com/frontLayer/assets와 같이 사용된다.
- frontLayer/assets: 이 경로는 상대 경로로 현재 페이지 또는 파일을 기준으로 해당 경로로 이동한다. 예를 들어, 현재 페이지가 http://example.com/somepage일 경우, http://example.com/somepage/frontLayer/assets를 나타낸다.
728x90