ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [웹개발일기] 카페24 호스팅 context.xml 에러 해결 방법 (요소 콘텐츠는 올바른 형식의 문자 데이터 또는 마크업으로 구성되어야 합니다.)
    개발일기/웹개발일기 2021. 2. 9. 15:13

     

    개인적으로 스프링을 연습하고자 꾸준히 진행하고 있는 단비 프랑스어 프로젝트를 카페24를 통해서 도메인을 구입하고 호스팅을 했었다. 그런데 기존의 Oracle 데이터베이스를 MySQL로 마이그레이션 하는 과정에서 문제가 있었는지 위처럼 페이지 접속이 안되기 시작했다. 그래서 뭐가 문제일까 고민하면서 카페24 서버 환경과 프로젝트 환경이 달라서 그런것같아 이 부분을 맞춰봤다.

     

     

     

    시도 1

    톰캣 모든 버전 다운로드 가능한 사이트

    tomcat.apache.org/download-80.cgiarchive.apache.org/dist/tomcat/

     

    Index of /dist/tomcat

     

    archive.apache.org

     

    STS에서 사용하고 있던 Tomcat 버전은 9버전이기 때문에 8버전으로 다운그레이드 시켜준다.

     

     

    다운로드 후 반디집으로 "알아서풀기" 로 압축을 풀어준다.

     

     

    STS에서 Server 를 추가해준다.

     

     

     실행할때 기존의 9버전이 아닌 8버전을 선택하고 실행해준다. 8버전으로도 잘 실행되는것을 확인.

     

     

     

    하지만 로컬상에서만 잘 구동될 뿐 서버에 올리면 똑같이 도메인에 접속 할 수 없었다. 

     

    시도 2

    도저히 에러의 원인을 알 수 없을때는 서버 로그를 살펴봐야한다. 서버 로그를 보는 방법은 2가지가 있다.

    먼저 Putty에서 직접 명령어를 쳐서 보는 방법으로는, 아래처럼 톰캣 구동을 껐다가 다시 킨 후

     

     

    tail 명령어를 입력하고 서버에서 일어나는 모든 동작들에 관한 실시간 모니터링 로그를 확인하는것.

    tail -f tomcat/logs/catalina.out

     

    하지만 아래처럼 굉장히 가독성이 떨어지기 때문에 서버에서 직접 로그 파일을 다운로드 받아 메모장으로 편하게 보기로 한다.

     

     

    서버에서 로그파일을 직접 받으려면 우선 파일질라의 /tomcat/logs 디렉토리로 가야한다.

     

     

    방금 톰캣을 구동시킨 시간을 찾아서 로그파일을 더블클릭하여 로컬 디렉토리에 다운로드 받아준다.

     

     

    그러면 Putty에서 봤던 에러들을 메모장으로 확인 할 수 있다.

     

     

    이제 에러의 원인을 꼼꼼히 찾아본다. 문제의 원인이 context.xml에 있는것 같다.

     

     

    아마 오라클로 도메인 호스팅을 하려고 데이터베이스 연결해주는 부분을 수정했었는데 그게 문제였던것 같아서 백업해 놓은 context.xml 원본 파일로 덮어쓰기 해줬다.

     

    context.xml 파일은 /tomcat/conf 경로에 있다.

     

    원본 context.xml 소스

    <?xml version='1.0' encoding='utf-8'?>
    <!--
      Licensed to the Apache Software Foundation (ASF) under one or more
      contributor license agreements.  See the NOTICE file distributed with
      this work for additional information regarding copyright ownership.
      The ASF licenses this file to You under the Apache License, Version 2.0
      (the "License"); you may not use this file except in compliance with
      the License.  You may obtain a copy of the License at
    
          http://www.apache.org/licenses/LICENSE-2.0
    
      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.
    -->
    <!-- The contents of this file will be loaded for each web application -->
    <Context>
    
        <!-- Default set of monitored resources. If one of these changes, the    -->
        <!-- web application will be reloaded.                                   -->
        <WatchedResource>WEB-INF/web.xml</WatchedResource>
        <WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>
    
        <!-- Uncomment this to disable session persistence across Tomcat restarts -->
        <!--
        <Manager pathname="" />
        -->
    
        <!-- Uncomment this to enable Comet connection tacking (provides events
             on session expiration as well as webapp lifecycle) -->
        <!--
        <Valve className="org.apache.catalina.valves.CometConnectionManagerValve" />
        -->
    </Context>

     

    원본 context.xml 파일을 덮어쓰기 해주니까 드디어 해결되어서 데이터베이스 마이그레이션이 되어 프로젝트를 다시 호스팅 할 수 있게 되었다. 오예!!!!!!!! 

     

    댓글

Today
Designed by Danbee Park.