【发布时间】:2013-08-24 11:19:06
【问题描述】:
我需要以某种方式将 Tomcat 日志文件公开给浏览器。我知道这不安全,但这就是我们所要求的。
我考虑过从日志位置建立一个硬链接,例如tomcat/webapps/ROOT/html/catalina.out -> mydir/logs/catalina.out,但我认为这不是一个好的解决方案(即使它确实有效)。是否有将 Tomcat 日志文件公开给浏览器的既定方法?
【问题讨论】:
我需要以某种方式将 Tomcat 日志文件公开给浏览器。我知道这不安全,但这就是我们所要求的。
我考虑过从日志位置建立一个硬链接,例如tomcat/webapps/ROOT/html/catalina.out -> mydir/logs/catalina.out,但我认为这不是一个好的解决方案(即使它确实有效)。是否有将 Tomcat 日志文件公开给浏览器的既定方法?
【问题讨论】:
对分发配置的这种修改将通过 Tomcat DefaultServlet 的服务通过 HTTP 公开 Tomcat 日志。已通过 7.0.56、8.0.24 的 Tomcat 发行版确认。
出于本示例的目的,规范的 Tomcat 发行版被解压到 /opt/tomcat。
在/opt/tomcat/conf/Catalina/localhost 中创建文件logs.xml 包含以下内容:
重新启动 Tomcat。浏览到您知道的日志文件,例如
如果您还希望能够浏览日志列表,请建议此额外的配置更改。
编辑/opt/tomcat/conf/web.xml。在配置listings参数的地方,通过将其值设置为true来开启它:
...
...列表 true
...
重新启动您的 tomcat 以使更改生效。在浏览器中进行此测试时,期望看到日志文件列表作为可点击链接
出于安全或性能/资源使用方面的考虑,这些设置可能不适用于某些生产环境。
从某种意义上说是对这个项目的改写: Simplest way to serve static data from outside the application server in a Java web application
了解更多(在这个问题的参差不齐的边缘)
还有非常有用的文档
【讨论】: