vue3 vite vue-router reload 404 (2)

sooni·2023년 4월 10일
0

vue-router

목록 보기
2/3

이전글에서 web.xml로 해결했다면 근본적인 해결방법을 포스팅한다.

당연히 Apache라고 생각했던 나를 반성하며 tomcat에서 vue-router 적용하는 방법으로 다른 글 포스팅을 통해 따라했다.

tomcat에 적용하기

tomcat-server-9.0.73

#1. server.xml 파일 수정
<Valve className="org.apache.catalina.valves.rewrite.RewriteValve" /> 추가

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">

        <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
        -->
        <Valve className="org.apache.catalina.valves.rewrite.RewriteValve" />

        <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html
             Note: The pattern used is equivalent to using pattern="common" -->
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />

      </Host>

#2. rewrite.config 파일 만들기
${tomcat_home}/conf/Catalina/localhost/rewrite.config

RewriteCond %{REQUEST_PATH} !-f
RewriteCond %{REQUEST_PATH} !-d
RewriteCond %{REQUEST_URI} !^/images/(.*)$
RewriteCond %{REQUEST_URI} !^/css/(.*)$
RewriteCond %{REQUEST_URI} !^/js/(.*)$
RewriteCond %{REQUEST_URI} !^/favicon.ico
RewriteRule ^/${context}/(.*) /${context}/index.html

context에 내가 설정한 context 이름을 설정해주면 된다.
tomcat에 여러 앱을 배포한다면..? 모든 경로를 다 설정해줘야 하는건가?
애플리케이션경로/WEB-INF/rewrite.config 는 제대로 동작하지 않아서 일단 임시로 이렇게 적용했다.
web.xml 설정해주는 것과 다르게 콘솔창에서 404 에러가 뜨지 않는다.

참고

0개의 댓글