经过一番努力,我在(远程)Tomcat 5.5 服务器(Turnkey Linux 附带)上部署了一个 Web 应用程序。它是一个带有 Java 后端的 GoogleWebToolkit Web 应用程序。
观察日志一切都很顺利。 /manager 应用程序还在我的新应用程序上显示“running=true”。
但问题是,访问 /myApp url 会出现 404。到目前为止我所做的一切都没有成功:
- 确保它确实使用 Eclipse 在本地运行,在那里工作正常
- 检查部署服务器上的日志,它成功加载了 Spring 和其他一些库。事实上,它显示的消息与我在 Eclipse 中以托管模式运行它时显示的消息相同
- /manager、/host-manager、/admin 应用程序运行良好。
- 在 /manager 上重新加载应用程序也会显示“确定”
- 我指定了一个欢迎文件,实际存在的一个,直接点击也会给出 404
- 我使用默认主机('localhost'),就像 /manager、/host-manager 和 /admin 应用程序一样
- 在网上查了很多资料,都没有结果。
- 尝试了不同的 Tomcat (v6) 服务器(我家的 ubuntu 机器,我想要部署的服务器是网络上某处的 VPS),它就可以正常工作...重新安装 VPS?
有关如何解决此问题、找出问题所在或可能导致此问题的任何提示?
会不会有冲突? $CATALINA_HOME/webapps 目录中正在运行另一个应用程序,这会与部署在同一目录中的 myApp 冲突吗?
下面是我的 server.xml
<?xml version="1.0" encoding="UTF-8"?>
<Server>
<Listener className="org.apache.catalina.core.AprLifecycleListener"/>
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
<Listener className="org.apache.catalina.storeconfig.StoreConfigLifecycleListener"/>
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
<GlobalNamingResources>
<Environment
name="simpleValue"
type="java.lang.Integer"
value="30"/>
<Resource
auth="Container"
description="User database that can be updated and saved"
name="UserDatabase"
type="org.apache.catalina.UserDatabase"
pathname="conf/tomcat-users.xml"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"/>
</GlobalNamingResources>
<Service
name="Catalina">
<Connector
port="8009"
redirectPort="8443"
address="127.0.0.1"
protocol="AJP/1.3">
</Connector>
<Engine
defaultHost="localhost"
name="Catalina">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
<Host
appBase="webapps"
name="localhost">
</Host>
</Engine>
</Service>
</Server>
所以 Tomcat 前面有一个 Apache 实例。对 Apache 的部分/所有请求都转发到 Tomcat AJP 端口 8009。假设此 Apache-Tomcat 桥工作正常,因此仅关注已部署的应用程序,您可能需要添加一些JKMount
Apache 的指令httpd.conf
文件,以确保请求/myApp
url确实被转发到Tomcat。否则,它们由 Apache 提供服务,这意味着当找不到这些资源时,您会收到 404 错误。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)