inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Hướng dẫn JWT khởi động mùa xuân

Cài đặt bảo mật, cài đặt dữ liệu

시큐리티를 적용하고 호스팅에 올리면 오류가 납니다.

699

holykhd

58 câu hỏi đã được viết

0

샘플 프로젝트를 스프링 부트 최신버전으로 하고 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버전입니다.

 

 

spring-boot jwt

Câu trả lời 1

0

shonn23230444

Cafe24 에서 Tomcat JSP 호스팅으로 하셔야합니다

0

holykhd

JAVA 개발을 할 때 Tomcat JSP호스팅은 당연한 것 아닌가요?

spring boot 3.x 버전 강의도 만들어주시면 안될까요?

0

85

1

3강 secret key 관련해서 질문있습니다

0

76

1

JwtFilter 에 TokenProvider 선언 시 final 키워드 빠진 이유

0

92

1

/api/authenticate 포스트맨 401 에러

0

245

1

Spring boot 3.x버전에서 data.sql 오류 발생할 경우

4

416

1

/api/hello 접근 시 401 나올 때 해결법

2

320

2

소스코드 전체 볼수 있을까요?

0

405

2

머이렇게 안되는게많노 ㅠ

1

778

2

스프링부트 3.x 버전 data.sql 삽입 오류 발생할 경우 해결 방법

6

1367

2

postman 결과가 다릅니다

0

376

2

body값이 비었습니다.

0

407

2

jjwt 버전을 올렸더니 jwt가 유효하지 않다고 합니다

0

3625

1

Refresh Token

0

523

1

유저 권한 설정

0

380

2

setAuthentication

0

507

1

postman에서 오류가 납니다..

0

1781

3

Spring boot 3.1.5 기준 학습 정리 파일 공유

1

1105

4

/api/hello에 접근이 안됩니다 ㅠㅠ

0

1099

2

mysql 설정로 실습시

0

893

2

유효한 JWT 토큰이 없습니다

0

678

2

8:45 spring security 3.1.5 설정 방법 (버전 안 맞춰서 안될때)

1

2291

2

2:00 에서 저처럼 버전 안 맞춰서 해서 헤매는 분들 이걸로 해보세요.

0

1286

3

JWT String argument cannot be null or empty.

0

2182

2

new User 생성자 오류 발생하는 분들...

6

512

2