当前位置:首页 > tomcat > 正文内容

tomcat8 tomcat9 :虚拟目录配置 出现 404bug 解决方案

关中浪子3年前 (2022-02-11)tomcat1504
买泛域名SSL证书 送5斤装现摘猕猴桃一箱、同时提供技开源商城搭建免费技术支持。
泛域名ssl证书 239元1年送1个月、单域名39元1年,Sectigo(原Comodo证书)全球可信证书,强大的兼容性,高度安全性,如有问题7天内可退、可开发票
加微信VX 18718058521 备注SSL证书
【腾讯云】2核2G4M云服务器新老同享99元/年,续费同价

目标:访问ID+路径,直接获取静态资源,如图片等。

常规方法(方法一):

%tomcat%/conf/server.xml文件,标签下添加

<!-- 增加虚拟路径,供访问本地图片-->

<pre class="prism-highlight prism-language-markup"><Context path="/img" docBase="D:\test" debug="0" reloadable="true" crosscontext="true"></Context>
<Context path="/360" docBase="D:/360Downloads" ></Context>
<Context path="/img" docBase="D:\test" reloadable="true"></Context>

据网上资料的值,引发问题的情况有几个:

path与docBase路径名称不能一致;

实际地址docBase注意\/区别(据我测试好像没区别);

web.xml设置listings值为true,目的是显示虚拟路径。正式项目运作必须关掉。

<pre class="prism-highlight prism-language-markup">    <servlet>
        <servlet-name>default</servlet-name>
        <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
        <init-param>
            <param-name>debug</param-name>
            <param-value>0</param-value>
        </init-param>
        <init-param>
            <param-name>listings</param-name>
            <param-value>false</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

设置虚拟根目录

标签下添加

<Context path="" docBase="D:\\test"></Context>

1

PS:直接访问根路径无效,无法查看到列表,必须根目录下直接访问具体资源名。

本人解决此次问题方案,方法二

路径:%tomcat%/conf/Catalina/localhost/

方案:此路径下创建xml文件,文件名为你想访问的Path路径(即path=”“的值),xml文件内写入实际存储地址。

example:

<?xml version="1.0" encoding="UTF-8"?>

<Context docBase="D:/360Downloads" reloadable="true"></Context>

test.xml

设置完成后重启tomcat,访问http://localhost/test

即可看到该文件目录列表。

思考

此次问题难点在于tomcat始终读取不到我设置的path路径,感觉十分蹊跷。

我猜测可能是由于不同版本的tomcat设置此处的位置不同,而百度谷歌拿到的资源大部分是2年前tomcat5 6。

由此观之,有必要看看官方文档的说明了。

总结

经过实际操作,发现eclipse下配置的tomcat中,需要给Server配置方法一,即可访问静态路径; 如果直接在tomcat文件夹内修改配置文件,则必须重启并清理workspace缓存。

eclipse修改tomcat配置

但是如果是实际发布的tomcat服务器,外部访问,则必须用方法二,此刻方法一是无效的。。。

至于为啥,我也不知道,今天这个tomcat快把老子整哭了。。马拉个巴巴的

PS:后来找到一篇总结比较好的。

码农翻生

找梯子最重要的就是稳定,这个已经上线三年了,一直稳定没有被封过,赶紧下载备用吧!

扫描二维码推送至手机访问。

版权声明:本文由码农翻生发布,如需转载请注明出处。

本文链接:https://lubojian.cn/post/109.html

分享给朋友:
返回列表

没有更早的文章了...

下一篇:tomcat 启动 一闪而过

相关文章

tomcat 启动 一闪而过

tomcat 启动 一闪而过

tomcat 启动一闪而过,无法看到具体报啥错误,可以在startup.bat 文件结尾 增加 pause这样窗口就不会关闭,可以查看具体报啥错误如果显示的是 如下错误:Neither the JAVA_HOME nor the...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。