【发布时间】:2019-08-11 18:19:13
【问题描述】:
我注意到这些文件夹具有非常不同的属性。我最近在 webapps 文件夹下部署了一个 .war 文件。我注意到,一旦部署了 .war 文件,就会将项目的未压缩版本添加到目录中。当我尝试修改未压缩版本中的任何文件时,Tomcat 服务器不会更改我的应用程序的行为(通过 Web 浏览器运行我的应用程序时我看不到更改)。但是,如果我将同一个项目放在 webapps/ROOT 下,我的应用程序的更改将导致我的应用程序行为的瞬时更改(可以通过浏览器看到)。
这是另一个例子。我目前在某些应用程序上遇到 HTTP 415 错误。当我使用文件夹 webapps 下的 .war 文件部署它时,我得到了那个错误。但是,如果我将应用程序的未压缩版本放在 webapps/ROOT 下,错误就会消失并且我的应用程序可以正常运行。
这让我想到了我的问题。这两个文件夹有何不同?什么可以解释这些文件夹之间的这些差异?
【问题讨论】:
-
webapps是部署 Web 应用程序的位置。ROOT是未命名的根 Web 应用程序的特殊名称。例如。具有上下文/Foo的Web 应用程序位于webapps/Foo.war和/或webapps/Foo/文件夹中。具有上下文/的 Web 应用程序位于webapps/ROOT.war和/或webapps/ROOT/文件夹中。 -
我不知道,谢谢。这如何解释 webapps/ROOT/ 文件夹会在我更改代码后立即更新,而直接位于 webapps/ 文件夹下的 Web 应用程序不会更改的事实?