Spring

배포 된 .war 생성 오류 : 템플릿이 없거나 액세스 할 수 없습니다.

기록만이살길 2021. 3. 17. 08:03
반응형

배포 된 .war 생성 오류 : 템플릿이 없거나 액세스 할 수 없습니다.

1. 질문(문제점):

localhost에서 잘 실행되는 스프링 부트 응용 프로그램이 있습니다.

http : // localhost : 8080 / home으로 액세스합니다.

이제 애플리케이션을 호스팅 서버에 배포하고 싶습니다.

.war을 생성하고 거기에 배포했습니다.

구성 http://www.customdomain.com/hostingpath/하는 응용 프로그램의 루트 경로가 될 수 있습니다.

따라서 로컬이 http : // localhost : 8080 / 인 것에 매핑되어야합니다.

이제 http://www.customdomain.com/hostingpath/home에 액세스 하면 다음 오류가 발생합니다.

Whitelabel Error Page
This application has no explicit mapping for /error, so you are seeing this as a fallback.

Tue Jan 12 17:40:56 BRT 2021
There was an unexpected error (type=Internal Server Error, status=500).

로그를 살펴보면 다음 메시지가 있습니다.

org.thymeleaf.exceptions.TemplateInputException: Error resolving template [home], template might not exist or might not be accessible by any of the configured Template Resolvers

home.html이 .war 파일에 의해 호스팅 서버의 \ templates 폴더에 올바르게 배포 되었기 때문에 어떻게 될 수 있는지 이해하지 마십시오.

그래서 파일이 있습니다. 그리고 앱이 localhost에서 실행되면 home.html이 정상적으로 열립니다.

그렇다면 그 오류의 원인은 무엇일까요?

감사.

2. 해결방안:

문제를 발견했습니다. 대소 문자를 구분하는 문제였습니다. 내 로컬 시스템은 대소 문자를 구분하지 않는 창입니다. 그러나 호스팅 서버는 대소 문자를 구분하는 Linux입니다. 호스팅 서버에서 Home.html을 home.html로 이름을 바꾸었을 때 작동했습니다!

65692411
반응형