我今天开始进行JAVA Web开发,遇到了一些问题,我在ubuntu机器上安装了tomcat7。现在,当我浏览到//localhost:8080时,我得到默认的欢迎页面,上面写着:

这是默认的Tomcat主页。可以在本地文件系统上找到它:/var/lib/tomcat7/webapps/ROOT/index.html
Tomcat7经验丰富的人可能很高兴地了解到,此Tomcat系统实例已按照CATALINA_HOME中的规则安装了/usr/share/tomcat7中的CATALINA_BASE/var/lib/tomcat7中的/usr/share/doc/tomcat7-common/RUNNING.txt.gz

但是奇怪的是,当我尝试echo $CATALINA_HOME时,什么也没有显示。
我也不能在默认的/var/lib/tomcat7/ROOT中复制/创建任何东西,尽管这只是提供很少的权限的问题,但是我想知道这是否是正确的方法?

我想做的是在家里创建一个单独的目录,我可以在其中放置Web应用程序,tomcat可以从那里读取下摆。有办法吗?在apache中,我可以通过更改文档根目录和目录来实现,但是我不知道如何为tomcat做到这一点

最佳答案



这是因为打包版本是在从配置文件(通常是/etc中的某个位置)中读取Tomcat之后,才在启动Tomcat之前设置CATALINA_HOME的。



权限问题与您不是root用户(或Tomcat用户)有关。大多数打包的Tomcat安装(deb或RPM)倾向于在安装时考虑特定的用户,并且由于某些原因有时无法复制内容。
/usr/share/tomcat7是您的CATALINA_HOME目录,它具有其他目录的链接,例如/var/lib/tomcat7/webapps/etc/tomcat7等。您不应该直接复制到Web应用程序中,应该将Web应用程序打包到WAR文件中并“部署”。优点很多。



是的,在“部署Web应用程序”时创建了一个。查看标准的Tomcat7文档,如果您喜欢非命令行界面,请考虑安装“管理器” Web应用程序。现在您知道了Web应用程序的“安装”是什么,这将可能是一项更轻松的任务。



Tomcat对文档根目录有一组不同的,更具限制性的要求。您需要学习它,然后接受一个想法,那就是它永远不会一样。基本上,在“webapps”目录下是一个WAR文件或来自WAR文件的扩展目录。对于Tomcat而言,就地编辑不是一个好主意,因为CGI等效项不会在每次运行时从磁盘读取,它们会链接到Tomcat的内存中。这意味着目录中的更改可能不会影响您的Web应用程序,这是一个很好的理由,不必理会更改已部署的Web应用程序的磁盘文件。

修改Web应用程序,将其重新打包,然后更新部署。这实际上是使用Tomcat的“正确”方法。

10-02 02:49
查看更多