Tomcat Rewrite Valve 正在客户端应用程序中创建循环

Tomcat Rewrite Valve is creating a loop in clientapp

我在 tomcat 中有一个具有历史模式 运行 的 Vue SPA。 为了解决 404 路由问题,我已将这段代码添加到我的 ~/conf/server.xml 文件中 tomcat:

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

      <Valve className="org.apache.catalina.valves.rewrite.RewriteValve" />

 ...
    </Host>
 ... 

并且我已将这段代码添加到我的 ~/Catalina/localhost/rewrite.config 文件中:(顺便说一句,我在不同的容器中有 6 个 api,我认为它们可能是造成问题的原因?)

 RewriteRule ^/api1/ - [L,NC]
 RewriteRule ^/api2/ - [L,NC]
 RewriteRule ^/api3/ - [L,NC]
 RewriteRule ^/api4/ - [L,NC]
 RewriteRule ^/api5/ - [L,NC]
 RewriteRule ^/api6/ - [L,NC]
 RewriteCond %{REQUEST_PATH} !-f
 RewriteRule ^/(.*) /index.html

我已经重新启动了我的服务器,但我的数组中仍然出现无限循环,这些数组正在从我的 api 中填充。 如果我删除 rewrite.config,则该问题不存在。 但后来我再次收到 404 错误.. 有什么想法吗?

此问题已通过更改 rewrite.config 文件中的此代码得到解决。

   RewriteRule ^/myapi1/.* - [L,NC]
   RewriteRule ^/myapi2/.* - [L,NC]
   RewriteRule ^/myapi3/.* - [L,NC]
   RewriteRule ^/myapi4/.* - [L,NC]
   RewriteRule ^/myapi5/.* - [L,NC]
   RewriteRule ^/host-manager/.* - [L,NC]
   RewriteRule ^/manager/.* - [L,NC]
   RewriteCond %{REQUEST_PATH} !-f
   RewriteRule ^/(.*) /index.html