当前位置: 代码网 > 服务器>服务器>Tomcat > tomcat如何去掉项目名称直接访问项目

tomcat如何去掉项目名称直接访问项目

2024年07月03日 Tomcat 我要评论
tomcat去掉项目名称直接访问项目需求: 把发布到tomcat下的web项目,访问路径去掉项目名称就是说我在服务器上发布的网页,不需要加项目名,根据端口号就能直接访问了方法一原理:tomcat的默认

tomcat去掉项目名称直接访问项目

需求:

把发布到tomcat下的web项目,访问路径去掉项目名称

就是说我在服务器上发布的网页,不需要加项目名,根据端口号就能直接访问了

方法一

原理:

tomcat的默认根目录是root,实际上root这个项目在实际生产环境是没有用的,所以我们可以用我们的项目覆盖root项目

操作过程:

1.删除root下所有文件及文件夹

2.把我们项目的war包解压后,项目目录下的所有文件和子目录都拷贝到root目录下即可 或者干脆:直接删掉root目录,然后把我们的项目打包名称改成root.war,放到webapps下就行

方式二:(推荐)

原理:

tomcat本身可以配置虚拟目录。方法就是在server.xml中节点下加入context信息。

如我们可以配置<context path="/abc" docbase=“d:\app\abc” …/>,那我们可以通过地址http://localhost:8080/abc来访问我们放在d:\app\下面的abc项目。

我们可以把这个path="/abc"修改为path=""。

意思就是把abc映射到根目录,访问路径就会变成http://localhost:8080/。

操作过程:

按照配置虚拟目录的方式,在下添加一个context节点,具体配置如下:

<engine name="catalina" defaulthost="localhost"...>  
...  
    <host name="localhost"  appbase="webapps" unpackwars="true" autodeploy="true">  
    <context path="" docbase="你的项目名" reloadable="true" />  
<!--注:我这里使用的是相对路径,项目是放在tomcat的webapps目录下的,当然也可以改为绝对路径-->  
...  
    </host>  
...  
</engine>

如果端口是8080, 即可直接 http://ip:8080 就能访问

tomcat去掉项目名后,访问路径依旧有问题的解决方案

tomcat去掉项目名后,能访问主页,却访问不了其他页面

将个人博客发布到服务器上后,blog.war包放在了/usr/local/tomcat/apache-tomcat-8.5.66/webapps目录下,然后打开server.xml增加如下配置,理论上可以去掉路径访问的项目名(这里项目名是blog)。

<host name="localhost"  appbase="webapps"
            unpackwars="true" autodeploy="true">
    <context path="" docbase="/usr/local/tomcat/webapps/blog" reloadable="false"/>

出现的问题

http://161.62.71.204/只能访问主页,访问其他页面报404

访问http://161.62.71.204/ 后,确实能进入博客主页,但点击其他博客页面报404,如 访问http://161.62.71.204/blog/44,却找不到该文件

后来发现:必须加上项目名才能访问其他所有页面,如http://161.62.71.204/blog/blog/44

这样不符合当初去掉项目名的初衷

解决方案

在 appbase=“webapps"改成"webapps/项目名”

<host name="localhost"  appbase="webapps/blog"
            unpackwars="true" autodeploy="true">
    <context path="" docbase="/usr/local/tomcat/webapps/blog" reloadable="false"/>

http://161.62.71.204/就能访问所有页面了

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com