Tomcat工作但我无法访问http:// localhost:8080 /

时间:2010-05-17 10:17:25

标签: eclipse tomcat6

当我从Windows托盘中运行Tomcat时,它启动了,我无法访问http://localhost:8080/ Tomcat主页,但是如果我从Eclipse运行它,它可以工作,我的应用程序工作,但我无法到达http://localhost:8080/ ...

如何解决?或者这是正常的吗?

谢谢!

2 个答案:

答案 0 :(得分:13)

这可能是正常的,根据this thread

  

这很正常   要查看原因,请在“服务器”视图中双击Tomcat服务器。这将打开Tomcat配置编辑器。单击Overview部分中的“Open launch configuration”链接。这将打开启动配置属性对话框。选择Arguments选项卡并检查VM Arguments字段的内容。

     

请注意,catalina.home属性指向Tomcat安装,但catalina.base指向工作区下的“.metadata\.plugins\org.eclipse.wst.server.core\tmp”目录。
  因此,您正在运行Tomcat的单独实例。 “webapps”目录下的“.metadata\...\tmp”目录仅包含“空”ROOT webapp以及已添加到服务器的任何Web项目。这就是你获得404的原因。

     

在Tomcat配置编辑器中,您可以取消选中“直接从工作区运行模块(不要修改Tomcat安装)”选项,catalina.basecatalina.home都将设置为Tomcat安装。
  请注意,在此配置中,Eclipse中的Tomcat服务器“拥有”您的Tomcat安装   每次从Eclipse启动Tomcat服务器时,工作区中Servers项目下的Tomcat文件都将覆盖安装中的文件。

     

假设大多数人希望保持他们的Tomcat安装独立于Eclipse Tomcat服务器,因此默认情况下是创建一个单独的Tomcat实例。
  对于单独的实例,您可以在Eclipse Tomcat服务器的同时运行Tomcat安装,只要您修改其中一个或两个,以便它们使用的端口不会冲突。

     

如果您希望在Eclipse中保留单独的Tomcat实例时存在标准Tomcat Web应用程序,请切换到Tomcat配置编辑器中的“模块”选项卡,然后使用“添加外部Web模块”按钮手动添加所需的Web应用程序。请注意,这会为服务器的启动时间增加一点点。

请注意,这适用于使用WTP x1.5(似乎是tomcat 5或更低版本)的tomcat版本,在使用WTP(Web工具平台)x2.0及更高版本的tomcat中,您不再获得该选项。相反,您需要进入服务器属性并点击开关位置,然后显示正确的路径。然后你进入服务器配置(双击服务器打开配置)并将“服务器位置”更改为“使用Tomcat灌输”(中间的)。2

答案 1 :(得分:1)

了解Web应用程序结构

Web应用程序是Web资源的集合,例如JSP页面,HTML页面,servlet, 和配置文件,组织成Servlet规范中指定的层次结构。您 有两种方法可以组织Web应用程序:打包和解压缩。包装形式 称为Web归档(WAR)文件,解压缩的表单是存储的目录集合 在文件系统上。 无包装格式对于Web应用程序开发人员来说非常方便,因为它允许它们 在开发和调试应用程序时替换单个文件。 但是,在部署环境中,提供单个文件通常更方便 可以自动部署。这减少了放置文件的部署过程 设置系统资源。 Tomcat还可以自动扩展Web应用程序一次 服务器已启动。 WAR文件的自动扩展在server.xml中配置 file作为配置主机的元素的一部分。

Web应用程序上下文

每个Web应用程序对应一个上下文组件,如第1章所述,和 您为每个分配上下文路径。默认上下文称为ROOT,对应于 没有其他上下文信息的服务器的名称。例如,ROOT Web应用程序 在本地计算机上将对应http://localhost:8080.如果您已配置域 您的服务器的名称系统(DNS)设置,也可以从

等位置访问

用户通过请求相对于服务器的上下文来访问其他Web应用程序。对于 例如,用户可以使用以下URL访问Tomcat的管理器Web应用程序:

http://
localhost:8080/manager.

您放置在webapps文件夹中的应用程序以它们所在的目录命名。 因此,您可以使用以下命令访问tomcat-docs目录中的Web应用程序: http://localhost:8080/tomcat-docs.服务器上的每个应用程序都以其名称为人所知, 用户可以根据统一资源定位符的其余部分访问资源 (URL)在Web应用程序的名称之后。