카테고리 없음

spring boot 스프링부트 외부링크 적용 안될때

letsgojieun 2021. 8. 31. 21:31

 

프로젝트에서 회원가입 폼 css를 수정할 일이 생겨서 수정을 좀 했다

css styling은 resources의 css 폴더에 따로 작성하고 있는데

잘 적용되던 css가 갑자기 수정 저장 후 실행해도 적용이 안되었다

여기서 크게 두 가지 이유가 있는데

 

 

1. 캐시에 페이지 전체 resources가 저장된 경우

 

이미 캐시에 기존에 작성했던 resources 파일들이 저장되어 있어서 우리가 해당 웹페이지를 방문할 때마다

이를 새롭게 불러오는 게 아닌,

저장해놓은 기존의 리소스 파일들을 그대로 사용하는 것이다 (캐시 메모리)

이로 인해 스프링 부트에서 아무리 변경해도 웹브라우저에선 적용되지 않았던 것

(만약 resources 폴더로 따로 외부 링크를 빼놓지 않았다면 이와 상관없이 잘 적용될 것이다)

 

이럴 땐 해당 페이지 웹브라우저의 캐시를 삭제하거나,

해당 외부 링크의 href 경로 끝에? ver-1을 작성하여 버전을 업데이트시키고 저장 후 다시 실행하면

변경된 외부 링크가 정상적으로 적용이 된다

 

 

2. 경로 및 폴더의 구조가 잘못 설정된 경우

 

이 경우는 내가 위의 이유를 찾다가 발견했는데 대다수의 경우가 외부 링크 경로를 잘못 설정하거나,

폴더의 위치가 잘못된 경우였다.

 

 

우선 프로젝트 폴더의 올바른 위치

src - main - webapp - resources 안에 만들어야 한다.

WEB-INF에 생성하지 않도록 주의할 것!

 

 

그리고 css 외부 링크 폴더의 경로 설정은

 

<link rel="stylesheet"

href="${pageContext.request.contextPath}/resources/폴더명/프로젝트 파일명"

type="text/css" />

 

으로 작성해주면 된다 :)

반응형