java - F5 规则与 RESTful 服务

标签 java tomcat rest

我正在尝试在我们的 F5 上制定一条规则,以将流量适本地定向到我们的 Tomcat 服务器。我们正在为每个 RESTful 服务部署单独的 WAR 文件。因此,我们希望以以下 URI 为例:

/services/quiz/01234/ /服务/用户/54321/

其中“quiz”和“user”分别是 quiz.war 和 user.war。我们希望将/services/的 F5 级别的流量定向为根,并将 URI 的其余部分定向到 Tomcat 服务器。

我们如何做到这一点?


编辑

资源的浏览器 url 看起来像 http://www.domain.com/services/quiz/01234/

我希望 BIG-IP 将请求作为 http://tomcatserver:8080/quiz/01234/ 发送到 tomcat

所以基本上删除/services 并将其后的所有内容附加到 tomcat 域。我认为这将是一个简单的正则表达式,对吧?

最佳答案

我对我的 iRules 有点生疏,但我认为按照这些思路行事:

when HTTP_REQUEST {
  set path [HTTP::path]
  regsub "^/services/" $path "/" path
  HTTP::path $path
}

请注意,对“/services”(没有尾部斜杠)的请求将按原样传递,而对“/services/”(具有尾部斜杠但没有应用程序)的请求将转到根应用程序。我不确定如何处理这些退化的案例;您可能想要改变这种行为。

顺便说一下,DevCentral有一个很棒的社区致力于帮助人们使用像这样的 iRules。

关于java - F5 规则与 RESTful 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/726907/

相关文章:

Java 猜数游戏问题

tomcat - 问题包括部署到 Tomcat 的工件中的编译后阶段修改

java - Spring MVC 请求中断 Hook

Java Jersey 声明式超链接 @Ref 注解的使用

java - 正则表达式按空格拆分但忽略单词之间的空格

java - 如何自动构建 Java 类及其依赖的所有类?

java - Html Form无需提交自动调用Servlet

java - CAS 身份验证 - UrlRewriteFilter 使 request.getRemoteUser() 无效

Java servlet tomcat 404

rest - 是否有类似 NVP get balance API 的等效 REST API 函数来获取 Paypal 帐户的余额?