개발

[에러일기]sendRedirect시 ContextPath 누락으로 인한 404

Domaya 2023. 1. 18. 17:30

스프링 시큐리티 실습 중

로그인 성공시 해당 Role에 맞는 페이지로 리다이렉트 시켜주는 과정에서

404가 떴다.

 

아무리 봐도 매핑이 맞는데...뭐가 문젠지 해서 url창을 보니

http://localhost:8090/kosa/security/admin <- 이게 올바른 주소인데

내 리다이렉트는

http://localhost:8090/security/admin < - 이 주소로 가서 404가 나오는 것이었다.

 

if(roleNames.contains("ROLE_ADMIN")) {
	response.sendRedirect(request.getContextPath() +"/security/admin");
	return;
}
if(roleNames.contains("ROLE_MEMBER")) {
	response.sendRedirect(request.getContextPath() +"/security/member");
	return;
}

위와 같이 request.getContextPath()로 만들어주니 정상적인 주소로 Redirect됐다.

리다이렉트에선 contextPath가 자동으로 붙지 않는 모양이다...