url-rewriting - 如何将 tucky URL 重写与 Angular 和 Tomcat 7 集成
问题描述
我使用 Tomcat 7 服务器并将我的 angular 5 项目复制到 ROOT 目录中。深层链接目前不起作用。我曾尝试使用 tucky URL rewrite。
我在 ROOT 目录中创建了一个 WEB-INF 文件夹。在其中我创建了一个名为 lib 的文件夹并将文件“urlrewritefilter-4.0.3 .jar”保存在那里。
WEB-INF 文件夹还包含一个 urlrewrite.xml 文件和一个 web.xml。
我希望有人可以帮助我解决这个问题。
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 4.0//EN"
"http://www.tuckey.org/res/dtds/urlrewrite4.0.dtd">
<!--
Configuration file for UrlRewriteFilter
http://www.tuckey.org/urlrewrite/
-->
<urlrewrite>
<rule match-type="regex">
<note>
Redirect all http requests to angulars index. html except /tcc/* cause its needed for backend operations
</note>
<condition name="request-uri" operator="notequal">^/tcc/*</condition>
<from>^.*$</from>
<to type="permanent-redirect" last="true">http://localhost:8080</to>
</rule>
</urlrewrite>
web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<filter>
<filter-name>UrlRewriteFilter</filter-name>
<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
</web-app>
解决方案
我无法让塔基跑起来。我将 Angular 的路由方法更改为 # 路由以满足我的需要。运行此程序的另一个可行方法是更新到 tomcat 8 并使用 inbuild 机制。
推荐阅读
- android - Firebase 数据库 - Firebase 数据库运行循环 (19.3.0) 中未捕获的异常
- python - 估计器管道的参数 n_neighbors 无效
- python - FLASK_SQLAlchemy :有没有办法与自身建立表关系?
- php - 如何防止 DOMDocument 包装结果
标签?
- javascript - Ag-grid - 具有可扩展高度单元会导致渲染问题
- mongodb - 使用 MongoDB Atlas 的烧瓶用户
- reactjs - 如何将道具从功能组件传递到类组件
- javascript - javascript在动态生成的元素中设置onclick
- android - 需要帮助使用 Google Oauth 和 Android 配置 Django Rest API
- deep-learning - 关于过拟合模型