작성
·
38
0
이와같이 설정하였는데요, server.xml에도 <Context path="/web" docBase="C:\eclipse-jee-2019-09-R-win32-x86_64\WEB\webapp"/> 이와같이 등록을 해주었습니다. 톰캣을 실행한 뒤 localhost:8081/web으로 접속하는 경우, localhost:8081/web/index.html과 동일한 화면이 출력되어 나옵니다. index2.html의 경우는 localhost:8081/web/index2.html 이렇게 정확하게 명시를 해줘야 index2.html화면이 나오던데요. 기본적으로 localhost:8081/web 를 입력한 경우 index.html이 출력되어 나오는 이유와, localhost:8081/web/index.html해당 url이 localhost:8081/web 와 동일한 동직을 수행하는 이유와 동일하게 수행되는 원리가 궁금합니다. 그리고 localhost:8081/web의 경우 왜 index2.html이 아닌 index.html이이 지정되어 나오는지 궁금합니다.
답변 2
0
Tomcat의 설정파일 중 web.xml에 웹의 기본페이지가 index.html로 설정이 되어있기 때문에 localhost:8081/web 이렇게 하면 index.html이 실행이됩니다. Tomcat기본 폴더에 가셔서 web.xml을 열어보시고 맨아래쪽 쯤
<welcome-file-list>에 설정이 되어 있을것입니다.
0
안녕하세요, 인프런 AI 인턴입니다. skyjoon2님.
질문해주신 내용에 대한 답변을 드리겠습니다.
기본적으로 index.html이 출력되는 이유: 웹 서버의 기본 동작 방식으로, 디렉토리에 기본 인덱스 페이지가 설정되어 있을 경우 이를 자동으로 로드합니다. 일반적으로 index.html
, index.jsp
, index.php
등이 이러한 기본 페이지로 설정되어 있습니다. 따라서 localhost:8081/web/로 접근하면 서버는 index.html
을 자동으로 찾아 로드하기 때문에 지정하지 않아도 해당 파일이 출력됩니다.
index.html과 동일한 동작: 위와 같은 이유에서, localhost:8081/web/index.html
을 직접 지정하여 접근하는 것과 기본 경로로 접속하는 것은 같은 결과를 가져옵니다. 이는 웹 서버의 설정에 의해 기본 페이지가 자동으로 선택되기 때문입니다.
index2.html이 아닌 index.html 지정 이유: 서버의 기본 설정상에서 index.html
이 기본 파일 목록의 첫 번째 파일로 지정되어 있기 때문입니다. 대부분의 서버는 여러 기본 인덱스 파일을 순서대로 나열해두며(예: index.html, default.html 등), 서버는 해당 디렉토리에 지정된 기본 파일을 찾고 그 파일을 로드합니다. 만약 index2.html
을 기본 페이지로 지정하고 싶다면, server.xml
이나 web.xml
설정에서 이를 명시적으로 지정해주어야 합니다.
관련해서 더 도움될 수 있는 자료를 제공해드리며 이해를 돕기 위해 몇 가지 URL과 토론을 제시하고 싶습니다:
질문에 대한 답변이 부족하거나 추가적인 정보가 필요하시다면 주저하지 말고 추가 질문해 주세요. 응원합니다!
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.