在JBoss中启用SSI(ServerSide包含)?

时间:2009-05-28 17:14:19

标签: java jboss ssi

你们中的任何人都在JBoss中启用了SSI(ServerSide Includes)吗?我想它应该不难,因为它构建在Tomcat实例之上。

1 个答案:

答案 0 :(得分:3)

Tomcat已经在catalina.jar中包含 org.apache.catalina.ssi.SSIServlet 所以只需声明servlet并将其附加到映射URL,方法是在应用程序 web中设置它.XML

<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>0</param-value>
    </init-param>
    <init-param>
        <param-name>expires</param-name>
        <param-value>60</param-value>
    </init-param>
    <init-param>
        <param-name>isVirtualWebappRelative</param-name>
        <param-value>1</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>

我放了所有参数,你可以在这个Tomcat SSI参考中看到它们的定义。

正如文档所说,SSI可以绕过安全策略,因此必须具有特权,这样做会更改部署在 jboss-web.deploy 中的 context.xml 夹。只需将 privileged =“true”添加到根元素即可。

<Context ... privileged="true">

servlet将作为匹配其映射URL的文件的代理。