今天在eclipse中新建了tomcat server,但是由于一些配置出了问题,导致总是出现404报错,具体情况如下

症状:

tomcat在eclipse里面能正常启动,而在浏览器中访问http://localhost:8080/不能访问,且报404错误。同时其他项目页面也不能访问。

关闭eclipse里面的tomcat,在tomcat安装目录下双击startup.bat手动启动tomcat服务器。访问htt://localhost:8080/能正常访问tomcat管理页面

然后我去搜索了一下,找到了这篇blog,http://blog.csdn.net/wqjsir/article/details/7169838

里面说

症状原因:

eclipse将tomcat的项目发布目录(tomcat 目录中的webapp)重定向了,所以你会发现在tomcat安装目录下的webapp目录里面找不到你的项目文件。

-------------------2013-12-27重新编辑:-------------------

  感觉之前写的废话好多,简直无语,长话短说,解决方案就是:在eclipse中双击你配置好的服务器,然后:

  1、如果你选择了Use Tomcat installation选项,那么你就要注意,配置好“%CATALINA_HOME%/conf/server.xml”(里面的docBase要指向你的web-content的根目录,在这里,我的是E:\web.workspace\mldndemo\WebContent,即WEB-INF文件夹在这个目录下),并且把Deploy path设置为webapps

  2、如果你选择了Use workspace metadata选项,那么就保持其默认设置,并且配置好“[eclipse的workspace目录]/Servers/Tomcat-v6.0-Server-at-localhost-config/server.xml”(docBase在这里是E:\web.workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\ROOT,WEB-INF文件夹在这个目录下,并且注意,把你写的jsp和html页面拷贝到这个目录下),并且把Deploy path设置为wtpwebapps

-------------------下面是以前写的详细内容-------------------

然后呢,我就双击在eclipse中建立的tomcat server,看到如下信息

你可以看到,eclipse把所有的配置文件全部放到了当前workspace的子目录中,而不是像一般情况下给放到tomcat的安装目录下,对于我目前的情况,就是在这个目录下

好,那我就按照他说的方法,把路径改成如下,这样就指向tomcat安装目录中的路径了吧?

但是,情况是什么呢?还是404

后来我就去检查%CATALINA_HOME%/conf/server.xml,诶?里面居然没有配置<Context path="" docBase=""></Context>

我以前可是配置好了的!

其实呢,原因就是我在上面设置Use Tomcat installation的时候,eclipse把%CATALINA_HOME%/conf/server.xml给替换了,替换成了谁呢?看下图,这个server.xml是在我的workspace目录里面的/conf文件夹中的,上面已经说过了,但是尽管这个server.xml与%CATALINA_HOME%/conf/server.xml不是同一个,但是只要你配置为Use Tomcat installation,你在这个server.xml中所做的任何修改都会被反映到%CATALINA_HOME%/conf/server.xml中!也就是说eclipse帮你同步了这两个文件的内容!

但是要注意,eclipse仅仅会在你修改了Server Locations选项之后,并且重启了服务器,才会进行这个同步!

好吧,重新写上去(随便你写到哪个server.xml中都可以,因为在当前配置下,eclipse会帮你同步这两个文件的内容,但是要注意,这个同步是单向的,不是双向的,也就是说,你修改%CATALINA_HOME%/conf/server.xml,eclipse不会将其内容同步到/Servers/Tomcat-v6.0-Server-at-localhost-config/server.xml中),重启服务器,嗯,现在再看,可以用了

==============================

Ps:

实际上呢,我上面提到的那个blog没说中要点,最根本的原因还是server.xml没有被配置好,你完全可以选择就用Use workspace metadata配置,也不要把wtpwebapps修改为webapps,你只需要把上图中的/Servers/Tomcat-v6.0-Server-at-localhost-config/server.xml给配置好(主要是加上<Context>)就行了。

========================================================

总之,如果你选择了Use Tomcat installation选项,那么你就要注意,配置好%CATALINA_HOME%/conf/server.xml(里面的docBase要指向你的web-content的根目录,在这里,是E:\web.workspace\mldndemo\WebContent,即WEB-INF文件夹在这个目录下),并且把Deploy path设置为webapps

如果你选择了Use workspace metadata选项,那么就保持其默认设置,并且配置好/Servers/Tomcat-v6.0-Server-at-localhost-config/server.xml(docBase在这里是E:\web.workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\ROOT,WEB-INF文件夹在这个目录下,并且注意,把你写的jsp和html页面拷贝到这个目录下),并且把Deploy path设置为wtpwebapps

eclipse新建tomcat server但是总是报404的解决方法相关推荐

  1. 服务器进tp5项目报nginx404错误,TP5框架在nginx环境下路由报404错误解决方法 亲测可用...

    前段时间给客户写了个TP5框架的后台,主要是API调用,上传到客户服务器后发现首页可用,但所有内页报404错误,网上一搜发现天多一样的问题,但找了很多都是不可用的,而且都是过时的,但最终还是自己试出来 ...

  2. nginx无法下载文件,报404的解决方法

    使用nginx做负载均衡,在每个应用服务器都能下载文件,但是在nginx服务器里面无法下载文件,解决方法是修改如下配置: location /docs/ {proxy_pass http://webs ...

  3. eclipse/Tomcat ---Http 404错误解决方法

    error-1.启动Tomcat时,startup.bat闪退(tomcat*w.exe无法运行) 解决办法:(1).执行shutdown.bat命令:                 (2).cmd ...

  4. tomcat出现404的原因_详解Tomcat出现404的解决方法

    Tomcat测试出现404问题出现的问题如下: HTTP状态 404 - 未找到 类型 状态报告 消息 请求的资源[/chapter06/IndexServlet]不可用 描述 源服务器未能找到目标资 ...

  5. Target runtime Apache Tomcat v6.0 is not defined.错误解决方法

    Target runtime Apache Tomcat v6.0 is not defined.错误解决方法 Eclipse导入工程后工程上显示一个小红叉,但工程里没有文件错误,也没有语法错误,百思 ...

  6. 403 Forbidden You don‘t have permission to access this resource. Apache Server at IP Port 80的解决方法

    ECS下载站Forbidden You don't have permission to access this resource. Apache Server at IP Port 80的解决方法 ...

  7. Tomcat中文乱码问题的原理和解决方法

    为什么80%的码农都做不了架构师?>>>    Tomcat中文乱码问题的原理和解决方法 自从接触Java和JSP以来,就不断与Java的中文乱码问题打交道,现在终于得到了彻底的解决 ...

  8. mysql adminer 导入csv_mysql导入csv的4种报错的解决方法

    以此悼念我今天踩过的4个坑-- 坑一:local的错 报错: error 3948 (42000): loading local data is disabled; this must be enab ...

  9. mysql5.7 only_full_group_by_Mysql5.7及以上版本 ONLY_FULL_GROUP_BY报错的解决方法

    近期在开发过程中,因为项目开发环境连接的mysql数据库是阿里云的数据库,而阿里云的数据库版本是5.6的.而测试环境的mysql是自己安装的5.7.因此在开发过程中有小伙伴不注意写了有关group b ...

最新文章

  1. 有多少人在51job上找到工作_人不在日本,找到日本工作的最佳方案
  2. embedding 层的详细解释
  3. Java核心(四)你不知道的数据集合
  4. mysql 快速初始化_MySQL中的批量初始化数据的对比测试(r12笔记第71天)
  5. C++ 20 还未发布,就已凉凉?
  6. Redis集群案例与场景分析
  7. 五种常用web服务器jvm参数设置
  8. mysql查询语句内连接、左连接、右连接以及全连接查询
  9. 搜狗输入法 rpm包_输入法哪个好用?2019年终横评来袭
  10. C语言求100以内素数
  11. php开发中处理emoji表情和颜文字的兼容问题
  12. 《ElasticSearch技术解析与实战-朱林》
  13. 教你如何合并pdf文件
  14. 月薪30K的运维工程师面试宝典(面试必备干货)
  15. PHP 自动生成sitemap
  16. linux中文件在外存的物理地址放在,Linux文件系统中,文件在外存的物理地址放在 ( ) 中...
  17. 打破16项AI性能记录!A100领衔最新芯片跑分榜单
  18. bit.ly 域名缩短
  19. 洪飞计算机百度云,海天名师洪飞解读2011计算机考研大纲
  20. 【数据结构必备基本知识】数据结构常用预定义常量、类型及头文件

热门文章

  1. 如何扩容LVM逻辑卷
  2. 华为RH2285H V2设备管理口白屏的解决方法
  3. vba 操作html,VBA IE对象的操作方法
  4. mysql error 1790_Mysql 数据恢复报错
  5. python中对象的特性_Python深入学习之对象的属性
  6. mysql自定义函数重载_python pyMysql 自定义异常 函数重载
  7. dhcp snooping华为_使用DHCP snooping 功能防止DHCP Server仿冒者攻击(华为交换机)
  8. 为什么学习前端的人越来越多?
  9. web前端网页开发离不开的三要素:HTML、CSS、JavaScript
  10. mysql数据库权限传递,mysql数据库权限分配-参考