我今天开始使用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执行此操作
但奇怪的是,当我尝试echo $ CATALINA_HOME时,没有任何显示。
这是因为打包版本设置 CATALINA_HOME
在从配置文件(通常在/ etc中的某个位置)读取Tomcat之后启动Tomcat之前。
此外,我无法在默认情况下复制/创建任何内容
/ var / lib / tomcat7 / ROOT虽然只是提供一些问题
权限,但我想知道这是否是正确的方法吗?
权限问题与您不是root用户(或Tomcat用户)有关。大多数打包的Tomcat安装(deb或RPM)都倾向于在特定用户的情况下进行安装,并且有时复制内容不起作用。
/usr/share/tomcat7
是你的 CATALINA_HOME
目录,它有到其他目录的链接,例如 /var/lib/tomcat7/webapps
, /etc/tomcat7
您不应直接复制到Web应用程序中,应将Web应用程序打包到WAR文件中并“部署”它。优点很多。
我想要做的是在我家中创建一个单独的目录
我可以把我的web应用程序和tomcat从那里读取下摆。
有办法吗?
是的,在“部署Web应用程序”时创建了一个。查看标准的Tomcat7文档,如果您喜欢非命令行界面,请考虑安装“manager”Web应用程序。现在您已经知道调用了Web应用程序的“安装”,这可能是一项更容易的任务。
在apache中,我可以通过更改文档根目录来完成它
我不知道如何为tomcat做这件事
Tomcat对文档根有一组不同的,稍微限制一些的要求。你需要学习它,并且只是认为它永远不会是相同的。基本上在“webapps”目录下,是WAR文件或来自WAR文件的扩展目录。就地编辑对于Tomcat来说不是一个好主意,因为每次运行时都不会从磁盘读取CGI等效项,它们会链接到Tomcat的内存中。这意味着目录中的更改可能不会影响您的Web应用程序,这足以让您不必更改已部署的Web应用程序的磁盘文件。
修改Web应用程序,重新打包并更新部署。这真的是与Tomcat一起走的“正确”方式。
将权限777授予webroot文件夹
sudo chmod -R 777 Webroot
移动到tomcat文件夹后
但奇怪的是,当我尝试echo $ CATALINA_HOME时,没有任何显示。
如果使用此命令安装了tomcat7
sudo apt-get install tomcat7
/ usr / share / tomcat7是你的CATALINA_HOME,你需要在/.bashrc文件中将它添加为环境变量。
sudo vi ~/.bashrc
您可以将此信息添加到文件末尾:
export JAVA_HOME=/usr/lib/jvm/default-java
export CATALINA_HOME=/usr/share/tomcat7
保存并退出.bashrc。您可以通过重新启动bashrc文件来使更改生效。
. ~/.bashrc
现在,您将看到echo $ CATALINA_HOME时的路径。
参考