`
brandNewUser
  • 浏览: 447798 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Tomcat的文件列表服务

阅读更多

 

今天需要将分析后的日志结果发布到网站上供其他人浏览,虽然用户可以通过直接使用url链接可以访问到对应的文件,但是毕竟还是不方便,没有一个类似文件浏览器的东西,可以直接查看文件夹和文件列表。

 

其实这样的工具在tomcat中本身就已经实现了,只不过以前没有使用。对于任何想要发布成文件服务的项目,在tomcat的webapps中有一个已经存在文件夹,都会作为一个Context来解析,在该Context中我们可以将其中的所有文件以及文件夹进行目录浏览的展示。

 

在Context中类似Web项目,需要建立一个WEB-INF的文件夹,其中新建web.xml,内容如下:

<?xml version="1.0" encoding="UTF-8" ?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
                  http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
         version="2.5">

    <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>true</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>


</web-app>

 

其中使用tomcat中本身提供的Servlet,并将其listings设置为true。这样就可以查看到该Context下的所有目录列表:



 

当然,这也仅仅是在没有index.html时会显示成这样,否则直接显示index.html中的内容。

 

注意,修改这部分文件后,并不需要重新启动tomcat就可以生效。主页中会自动屏蔽名称为WEB-INF和META-INFO命名的文件夹。

 

从当前查看出的规则是:

  • 如果后缀名为.txt .log,直接显示内容;
  • 如果后缀名为.html,显示为web页面;
  • 如果为其他,直接下载;

(后续请补充,没有试验过)。

 

下面就是txt的示例显示页面:



 

 

 

  • 大小: 149.5 KB
  • 大小: 84.8 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics