0

我无法让 ssi 在 Tomcat 5.5.27 上工作。

使用标准 ssi 配置并将其记录在日志中

严重:#include--无法包含文件:/file/hi.html java.io.IOException:无法获取路径的上下文:/file/hi.html

我不知道上下文是什么。

感谢帮助

配置

<servlet>
    <servlet-name>ssi</servlet-name>
    <servlet-class>
      org.apache.catalina.ssi.SSIServlet
    </servlet-class>
    <init-param>
      <param-name>buffered</param-name>
      <param-value>1</param-value>
    </init-param>
    <init-param>
      <param-name>debug</param-name>
      <param-value>1</param-value>
    </init-param>
    <init-param>
      <param-name>expires</param-name>
      <param-value>666</param-value>
    </init-param>
    <init-param>
      <param-name>inputEncoding</param-name>
      <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
      <param-name>outputEncoding</param-name>
      <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
      <param-name>isVirtualWebappRelative</param-name>
      <param-value>0</param-value>
    </init-param>
    <load-on-startup>4</load-on-startup>
</servlet>


<servlet-mapping>
    <servlet-name>ssi</servlet-name>
    <url-pattern>*.shtml</url-pattern>
</servlet-mapping>
4

1 回答 1

1

首先,自 2012 年 9 月 30 日起,ASF 就不再支持 Tomcat 5.5。您确实需要升级。进一步的 5.5.27 于 2008 年发布,从那时起已经有很多错误修复和安全修复。升级的更多好理由。

使用您提供的最少信息(没有关于如何部署您的应用程序的详细信息,没有显示触发此错误的源代码的片段)看起来您正在尝试执行相对于 Web 应用程序的根目录的操作,而无需配置 SSI servlet那。设置isVirtualWebappRelative1应该可以解决问题。

于 2013-11-10T18:16:05.637 回答