17

我已经安装了 Eclipse 和 Tomcat 7。错误是当我从 Eclipse 运行 Tomcat 时它会启动,但之后,当我localhost:8080在 Google Chrome 中打开时,我会得到HTTP Error 404(). 请问我该如何解决?

4

8 回答 8

37

首先,停止您的 Tomcat,然后双击您的服务器,单击Server Locations 并检查Use Tomcat Installation (takes control of Tomcat installation).

于 2014-01-09T00:10:29.930 回答
19

这是因为没有默认的 ROOT Web 应用程序。当您创建一些 Web 应用程序并使用 Eclipse 将其部署到 Tomcat 时,您将能够使用以下形式的 URL 访问它

http://localhost:8080/YourWebAppName

其中YourWebAppName是您为 Web 应用程序指定的名称(所谓的应用程序上下文路径)。

引用Jetty Documentation Wiki(强调我的):

上下文路径是 URL 路径的前缀,用于选择将传入请求路由到的 Web 应用程序。通常,Java servlet 服务器中的 URL 是 format http://hostname.com/contextPath/servletPath/pathInfo,其中每个路径元素可以是零个或多个 / 分隔元素。如果没有上下文路径,则上下文称为根上下文


如果您仍然想要使用表单的 URL 访问的默认应用程序

http://localhost:8080

或者如果您将默认的 8080 端口更改为 80,那么只需

http://localhost

没有应用程序上下文路径,请阅读以下内容(引自教程:安装 Tomcat 7 并与 Eclipse 一起使用,强调我的):

将 ROOT(默认)Web 应用程序复制到 Eclipse 中。Eclipse 在 Eclipse 工作区中创建 Tomcat 文件夹时忘记复制默认应用程序(ROOT、示例、文档等)。转到 C:\apache-tomcat-7.0.34\webapps 并复制 ROOT 文件夹。然后转到您的 Eclipse 工作区,转到 .metadata 文件夹,然后搜索“wtpwebapps”。您应该找到类似的东西 C:\your-eclipse-workspace-location\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps (或者.../tmp1/wtpwebapps如果您已经在 Eclipse 中注册了另一台服务器)。转到wtpwebapps文件夹并粘贴 ROOT(如果询问您是否要合并/替换文件夹/文件,请说“是”)。然后重新加载 http://localhost/以查看 Tomcat 欢迎页面。

于 2013-01-20T21:51:42.563 回答
4

检查服务器配置和文件夹的路由:

  1. 打开服务器视图(窗口 -> 打开视图... -> 其他... -> 搜索“服务器”。

  2. 右键单击服务器(我的是 Tomcat v6.0)-> 属性-> 单击“切换位置”(检查该位置类似于 /servers ...

  3. 双击服务器。这将打开一个新的服务器页面。在“服务器位置”区域中,选中“使用 Tomcat 安装(控制 Tomcat 安装)”选项。

  4. 重新启动您的服务器。

  5. 享受!

于 2014-06-03T08:24:51.323 回答
3

如果您更改了位置,使用选项“使用自定义位置(不修改 Tomcat 安装)”并且部署的目录是“wtpwebapps”,那么您必须:

  1. 从 [workspace metadata] 切换到 /Servers/Tomcat v....,单击应用,确定。
  2. 重新启动服务器,如果您发现 404 错误消息而不是服务器正在运行,它只是在您选择的 Web 服务器位置没有启动文件。如果您遍历该位置,您会发现一堆已创建的目录。其中之一是wtpwebapps,其下有ROOT。这是您的网络服务器的目录。您需要返回已安装的 Tomcat 目录并将 <tomcat's installed dir>/web-apps/ROOT 的内容复制到您的 wtpwebapps。重新启动网络服务器,您应该会看到 tomcat 默认页面。
  3. 要使服务器状态、管理器应用程序和主机管理器正常工作,您必须将其他子目录从 <tomcat's installed dir>/webapps(即 docs、examples、host-manager、manager)复制到您的“webapps”(不是 wtpwebapps ) 目录。
  4. 编辑 '<your web directory>/conf/tomcat-users.xml' 并输入如下内容:
  5.       <role rolename="manager-gui"/>
          <role rolename="manager-status"/>
          <role rolename="manager-jmx"/>
          <role rolename="manager-script"/>
          <role rolename="admin-gui"/>
          <role rolename="admin"/>
          <user username="admin" password="yourpassword" roles="admin, admin-gui, manager-gui"/>
        
  6. 然后编辑 '<your web directory>/conf/server.xml',添加属性:
            只读=“真”
        
    进入 <GlobalNamingResources/> 组的 <Resource/> 键。
  7. 重新启动服务器并尝试使用配置的凭据登录。
注意:如果您更改服务器配置,假设您想比较默认配置(使用 tomcat 安装目录)和“新目录”,当切换回“新目录”时,“tomcat-users.xml”将是被默认文件覆盖,因此在执行此操作之前将此文件的内容保存在某处,然后将其复制回来。如果您只给用户名“admin”角色,您将被提示帮助消息。它说:您不应该授予 admin-gui 或 manager-gui 角色“manager-jmx”和“manager-script”角色。

于 2015-05-08T22:35:35.743 回答
3

Eclipse 在 Eclipse 工作区中创建 Tomcat 文件夹时忘记复制默认应用程序(ROOT、示例等)。转到 C:\apache-tomcat-7.0.34\webapps,右键单击 ROOT 文件夹并复制它。然后转到您的 Eclipse 工作区,转到 .metadata 文件夹,然后搜索“wtpwebapps”。您应该找到类似 your-eclipse-workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps 的内容(或 .../tmp1/wtpwebapps,如果您已经在 Eclipse 中注册了另一台服务器)。转到 wtpwebapps 文件夹,单击鼠标右键并粘贴 ROOT(如果询问您是否要合并/替换文件夹/文件,请说“是”)。然后重新加载http://localhost/以查看 Tomcat 欢迎页面。

于 2015-06-04T09:24:05.207 回答
1
  1. 单击窗口 > 显示视图 > 服务器或在“服务器”视图中右键单击服务器,选择“属性”。
  2. 或 通过双击打开服务器的概览屏幕。
  3. 在“服务器位置”选项卡中,选择“使用 Tomcat 位置”。
  4. 保存配置并重新启动服务器。

这样 Eclipse 将完全控制 Tomcat,这样当您从 Eclipse 内部运行时,您还可以使用 Tomcat 管理器访问默认的 Tomcat 主页。

截图附在这里

于 2014-07-25T22:00:19.850 回答
0

安装 Tomcat 后我遇到了这个或类似的问题。

其他答案不太奏效,但让我走上了正确的道路。在发现一个显示我遇到的确切问题的 YouTube 视频后,我在https://stackoverflow.com/a/20762179/3128838上回答了这个问题。

于 2013-12-24T13:58:07.080 回答
0

解决此问题的另一种方法是在 Eclipse 上转到服务器的属性(右键单击服务器 -> 属性) 在常规选项卡中,您会看到位置为 workspace.metadata。点击切换位置。

于 2013-12-18T21:48:57.147 回答