我想在tomcat的webapps目录中有一个符号链接,指向我文件系统中另一个地方的war文件,我希望将war文件作为默认的webapp。我已将以下解决方案拼凑在一起,但无法从浏览器访问该应用程序。
我的主目录中有一个文件夹〜/ tomcat / webapps。主人是tomcat7。在这个文件夹中,我有我的war文件myapp-1.0.war。
在我的/ var / lib / tomcat7 / webapps目录中,我有一个符号链接:
myapp -> /home/[me]/tomcat/webapps/myapp-1.0.war.
在我的/etc/tomcat7/server.xml中,我有:
<Context docBase="/var/lib/tomcat7/webapps/myapp" path="" reloadable="true" allowLinking="true"/>
Tomcat在日志中没有投诉,但我的应用程序无法访问。 [主持人]:8080 / rest /返回404,通常会把我带到主页。
我部分想要这样做以从我的war文件中抽象出版本号。任何想法为什么这不起作用,或者我做错了什么?
感谢。
答案 0 :(得分:2)
我发现了问题。 webapps目录中的符号链接需要具有.war扩展名。所以,而不是:
myapp -> /home/[me]/tomcat/webapps/myapp-1.0.war
应该是:
myapp.war -> /home/[me]/tomcat/webapps/myapp-1.0.war
我还能够缩短docBase属性的值,如下所示:
<Context docBase="myapp" path="" reloadable="true" allowLinking="true"/>