Tomcat7 .war项目没有部署

时间:2014-03-12 21:00:41

标签: tomcat tomcat7 war

我试图将.war项目部署到我的tomcat7安装中。

在复制之前,我停止服务器,将war复制到/ var / lib / tomcat7 / webapps,然后在复制后重启服务器。

当服务器启动时,内容被复制到它自己的目录中,但我得到404状态'尝试从浏览器访问时。

其他war文件有效,而且这个war文件在Eclipse Java EE中使用时也可以工作,所以我不确定是什么问题。

我使用的是Ubuntu 12.04和Tomcat7。

1 个答案:

答案 0 :(得分:3)

从评论中判断,当你得到'#34;许可被拒绝"在临时文件上,这个IMHO通常表明你已经将tomcat作为一个不同的用户启动了 - 通常当你第一次以root身份启动tomcat(以root身份创建所有临时文件)然后作为一个无特权用户(谁可以&#t覆盖临时文件。)

从技术上讲,当你再次以root身份运行时,问题可能会消失,但是,这是一个安全隐患,如果你想测试效果,你应该这样做。正确的方法是修复临时文件的权限,然后永远再次以root身份运行。

执行此操作的好方法(特别是如果您作为守护程序/服务运行)是让启动脚本自动在temp,work和log目录上设置所需的所有者/权限(可能更多,您必须尝试)然后断言tomcat作为该所有者启动。启动守护程序通常以root身份完成,因此启动脚本可能具有执行所有这些操作的正确权限:chownchmodsu是您的朋友。

/etc/init.d/tomcat(在ubuntu上)中一个非常简单的tomcat启动脚本如下所示(user:tomcat,location:/ opt / tomcat):

# Tomcat auto-start
#
### BEGIN INIT INFO
# Provides:          tomcat
# Required-Start:    $apache2
# Required-Stop:     $apache2
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# X-Interactive:     true
# Short-Description: Start/stop tomcat server
### END INIT INFO

export JAVA_HOME=/usr/lib/jvm/default-java
cd /opt/tomcat
chown -R tomcat webapps conf temp logs work

case $1 in
start)
        sudo -u tomcat /opt/tomcat/bin/startup.sh
        ;;
stop)  
        sudo -u tomcat /opt/tomcat/bin/shutdown.sh
        ;;
restart)
        sudo -u tomcat /opt/tomcat/bin/shutdown.sh
        sudo -u tomcat /opt/tomcat/bin/startup.sh
        ;;
esac   
exit 0

有了这个,我可以做sudo service tomcat restart(例如)并且不再需要注意适当的权限