动态重写规则。 Apache Tomcat

时间:2016-11-08 14:05:33

标签: java tomcat mod-rewrite

我有一项奇怪的任务,但我还没与Tomcat合作过,所以不要强烈打败我。

我在node.js上编写了一个应用程序,每隔几分钟生成一个随机字符串。之后,它应该使用随机字符串作为条件为Apache Tomcat创建重写规则。规则应该对node.js应用程序进行反向代理。

对于Apache,规则就像:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteRule ^(random_string/?(.*)?)$ http://localhost:8000/$1 [L,P]
</IfModule>

据我所知,有两种方法可以做到这一点:

  • Tomcat 8拥有自己的Valve进行重写
  • Tuckey网址过滤器

请帮我解决这个问题:

  • Tuckeyvalves.rewrite.RewriteValve
  • 的受欢迎程度
  • 如何为Tomcat进行配置重新加载
  • 如何使用valves.rewrite.RewriteValve
  • 进行代理反向

UPD: Tuckey Url过滤器可以通过参数confReloadCheckInterval

重新加载类

1 个答案:

答案 0 :(得分:1)

  

如何为Tomcat进行配置重新加载

我不相信可以像其他服务(如Apache HTTPD)一样重新加载主配置文件。这取自文档:

...since the main conf/server.xml file cannot be reloaded without restarting Tomcat.

但是,可以重新加载上下文,因此有希望,因为RewriteValve上的文档表明以下内容:

... It can also be in the context.xml of a webapp.

希望有所帮助。