Domanda

Qualcuno di voi hanno permesso SSI (ServerSide Include) in JBoss? Credo che non dovrebbe essere difficile in quanto è costruito in cima ad un'istanza di Tomcat.

È stato utile?

Soluzione

Tomcat include già nella catalina.jar org.apache.catalina.ssi.SSIServlet quindi basta dichiarare la servlet e collegarlo a un URL mapping, impostando questo nelle applicazioni 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>

ho messo tutti i parametri, è possibile vedere la loro definizione in questo Tomcat SSI di riferimento.

Mentre il dottore dice, SSI possono ignorare le policy di sicurezza, quindi deve essere privilegiata, fare questo modificando il context.xml in jboss-web.deploy all'interno del Deploy cartella. Basta aggiungere privilegiata = "true" per l'elemento principale.

<Context ... privileged="true">

Il servlet sarà solo agire come un proxy per i file che corrispondono l'URL della sua mappatura.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top