시큐리티를 적용하고 호스팅에 올리면 오류가 납니다.
687
58 asked
샘플 프로젝트를 스프링 부트 최신버전으로 하고 jdk는 1.8로하고 그래이들로 만들었습니다.
HomeController
@Controller
public class HomeController {
@GetMapping("/")
public String index() {
return "login";
}
@GetMapping("/login")
public String login() {
return "/index__";
}
}
이렇게 해서 도메인 접속 시 login페이지로 이동하게 했는데 war로 cafe24에 배포를 하면 정상적으로 login페이지가 보여집니다.
여기까지는 문제가 없는데 문제는 Spring Security를 적용했을 때 발생합니다.ㅠㅠ
CustomAuthenticationEntryPoint는
public class CustomAuthenticationEntryPoint implements AuthenticationEntryPoint {
@Override
public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) throws IOException, ServletException {
response.sendError(HttpServletResponse.SC_UNAUTHORIZED, "Unauthorized");
}
}
이렇게 되어있고,
SecurityConfig 파일은
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.antMatchers("/").permitAll()
.and()
.formLogin()
.loginPage("/login");
http.exceptionHandling()
.authenticationEntryPoint(new CustomAuthenticationEntryPoint());
}
}
이렇게 되어있습니다.
원래 SecurityConfig에 설정을 다 넣었었는데 Security만 적용을 하고 cafe24에 배포를 하면 404오류가 계속 나와서 아무리 이리저리 방법을 찾아봐도 도저히 방법을 찾을 수 없어서
기본 설정만 저렇게 넣어놓고 테스트를 했는데도 404오류가 나옵니다.ㅠㅠ
분명 로그인 페이지를 /login 으로 하고 기본 로그인 페이지도 이동하는 매핑을 했는데 왜 안되는지 모르겠네요.ㅠㅠ
오류 메시지는
2021-12-02 16:50:12.197 INFO 48329 --- [com-startStop-1] com.example.sample.ServletInitializer : Started ServletInitializer in 7.449 seconds (JVM running for 9.477)
02-Dec-2021 16:50:12.204 심각 [sample.cafe24.com-startStop-1] org.apache.catalina.core.StandardContext.filterStart Exception starting filter errorPageSecurityFilter
java.lang.AbstractMethodError
at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:285)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:112)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4708)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5348)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:753)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:729)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:974)
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1850)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
02-Dec-2021 16:50:12.205 심각 [sample.cafe24.com-startStop-1] org.apache.catalina.core.StandardContext.startInternal One or more Filters failed to start. Full details will be found in the appropriate container log file
02-Dec-2021 16:50:12.205 심각 [sample.cafe24.com-startStop-1] org.apache.catalina.core.StandardContext.startInternal Context [] startup failed due to previous errors
02-Dec-2021 16:50:12.207 정보 [sample.cafe24.com-startStop-1] org.apache.catalina.core.ApplicationContext.log Closing Spring root WebApplicationContext
02-Dec-2021 16:50:12.229 경고 [sample.cafe24.com-startStop-1] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [ROOT] appears to have started a thread named [SeedGenerator Thread] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
sun.security.provider.SeedGenerator$ThreadedSeedGenerator.run(SeedGenerator.java:362)
java.lang.Thread.run(Thread.java:745)
02-Dec-2021 16:50:12.230 경고 [sample.cafe24.com-startStop-1] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [ROOT] appears to have started a thread named [SeedGenerator Thread] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
java.lang.Thread.sleep(Native Method)
sun.security.provider.SeedGenerator$ThreadedSeedGenerator$BogusThread.run(SeedGenerator.java:475)
java.lang.Thread.run(Thread.java:745)
입니다.
오류로그를 보면 정확히는 모르겠는데 추측해보면 에러페이지 시큐리티 관련 필터를 불러오지 못해서 발생하는 오류인 것 같은데..
검색을 해 봐도 해결이 안되네요.ㅠㅠ
왜 로컬에서는 잘 되는데 war로 묶어서 cafe24 호스팅에 배포를 하면 위와같은 오류가 나오고 안될까요?ㅠㅠ
jdk버전은 로컬이나 cafe24모두 openJdk1.8버전입니다.
Answer 1
spring boot 3.x 버전 강의도 만들어주시면 안될까요?
0
70
1
3강 secret key 관련해서 질문있습니다
0
69
1
JwtFilter 에 TokenProvider 선언 시 final 키워드 빠진 이유
0
78
1
/api/authenticate 포스트맨 401 에러
0
225
1
Spring boot 3.x버전에서 data.sql 오류 발생할 경우
4
401
1
/api/hello 접근 시 401 나올 때 해결법
2
307
2
소스코드 전체 볼수 있을까요?
0
399
2
머이렇게 안되는게많노 ㅠ
1
761
2
스프링부트 3.x 버전 data.sql 삽입 오류 발생할 경우 해결 방법
6
1354
2
postman 결과가 다릅니다
0
363
2
body값이 비었습니다.
0
400
2
jjwt 버전을 올렸더니 jwt가 유효하지 않다고 합니다
0
3599
1
Refresh Token
0
507
1
유저 권한 설정
0
370
2
setAuthentication
0
499
1
postman에서 오류가 납니다..
0
1774
3
Spring boot 3.1.5 기준 학습 정리 파일 공유
1
1090
4
/api/hello에 접근이 안됩니다 ㅠㅠ
0
1084
2
mysql 설정로 실습시
0
878
2
유효한 JWT 토큰이 없습니다
0
669
2
8:45 spring security 3.1.5 설정 방법 (버전 안 맞춰서 안될때)
1
2284
2
2:00 에서 저처럼 버전 안 맞춰서 해서 헤매는 분들 이걸로 해보세요.
0
1279
3
JWT String argument cannot be null or empty.
0
2170
2
new User 생성자 오류 발생하는 분들...
6
504
2

