Tomcat启动成功访问主页失败的原因解决方案
如果在 网上搜一圈“tomcat启动成功,当输入http://localhost:8080报404错误”。有说查看日志定位问题的,有说检查端口有没有冲突,建议去server.xml修改端口的;有建议在cmd命令中输入netstat -ano查看tomcat端口是否已经被使用的;也有说环境变量配置有问题的。
这些可能都是对的,但还有一种情况容易被忽视:tomcat,webapps目录下没有ROOT文件夹!
有经验的人看到这个可能会淡淡的一笑。但对于不知道tomcat启动,输入http://localhost:8080默认进入的是$tomcat/webapps/ROOT路径的人来说,很容易就忽视这个问题。
至于需不需要环境变量,你可以打开$tomcat/bin下面的startup.bat文件,查看它里面的内容,如果能够看到:
set "CURRENT_DIR=%cd% if not "%CATALINA_HOME%" == "" goto gotHome set "CATALINA_HOME=%CURRENT_DIR%"
说明tomcat在启动的时候会去自动配置环境变量,所以完全不用自己再去做配置了。(tomcat5及以上都已经在startup.dat里面做了配置。)
那么为什么使用tomcat必须要配置java环境变量呢?
1)tomcat只是承载程序的服务器, 具体对程序的运行还是需要jdk的。
2)startup.bat要调用catalina.bat 而catalina.bat运行要用到JAVA_HOME环境变量(可以自己去查看文件)。
而至于网上建议netstat -ano查看端口,然后taskkill命令终止进程的来解决端口已使用问题,通常完全没有必要,只需要shutdown.bat下就ok了。在myeclipse启动tomcat,报"Unrecognized Windows Sockets error: 0:JVM_Bind"也一样(都是端口已被使用)。因为可能只是你在其他地方已经启动了tomcat。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
分享背景 由于一直在虚拟机的状态下开发PHP,尝试一下mac本地搭建环境.mac本身是...
1.如果你连追求自己喜欢的事物与人的勇气都没有,你注定是个失败者。 2.不要因...
注入获取 注入获取通过IConfiguration直接获取的方法官方文档里就有,可以直接看...
伪静态:即网站本身是动态网页如.php、.asp、.aspx等格式,而这类网页还带“”加...
前言 最近在阅读某开源框架源码的时候,发现作者在其中运用了很多 Action委托 和...
问题 如果打算为项目选择一款免费、开源的 数据库 ,那么你可能会在 MySQL 与Pos...
HTML常用meta 文章目录 HTML常用meta Meta(元数据) 提示以下是本篇文章正文内容...
分析可能是: asp的一些保留字段导致,具体的大家可以参考这篇文章: ASP常见的...
了解类似的获取字符位置的方法: charAt() 获取字符串指定位置的字符 用法:strO...
非ES6代码实现继承的主流方式主要可以分为: 构造继承、原型链继承、构造继承+原...