自动将 WAR 部署到 Tomcat 上的任意 URL

自动将 WAR 部署到 Tomcat 上的任意 URL

如何将 WAR 文件(顺便说一下,由 Play!框架创建)自动部署到 Tomcat 6,但在任意 URL 上,例如“/sub/url”,并且不改变 WAR 文件名

我知道我可以简单地将其上传为“sub#url.war”,Tomcat 会自动将其部署到“/sub/url”,但我的文件名包含特殊的站点标识符,因此即使 URL 发生变化,我也希望保留文件名。

假设文件名是“specialfilename.war”。

我还尝试将 META-INF/context.xml 文件添加到 WAR

<Context path="/sub/url" />

但它并没有以任何方式被使用。Tomcat复制该文件到“conf/Catalina/localhost/specialfilename.xml”,但指定的 URL 路径不影响任何内容。我的应用程序一直自动部署到“/specialfilename”。

答案1

感谢邮件列表回复,我找到了做我想做的事情的方法。

解决方案是不要使用“/var/lib/tomcat6/webapps”中 WAR 文件的自动部署功能,而是将 WAR 文件上传到另一个目录。然后必须明确创建一个与 URL 路径匹配的上下文配置文件,例如“/var/lib/tomcat6/conf/Catalina/localhost/sub#url.xml”,内容如下:

<Context docBase="/path/to/war/arbitrary-filename.war" />

相关内容