zoukankan      html  css  js  c++  java
  • 使用tomcat发布含有shtml文件的web程序

    平常都是使用html或jsp,当导入含有shtml的一个web项目时,向平常一样使用Jetty运行,访问到shtml文件时,直接在浏览器上显示出了源码。

    查询,使用tomcat发布,修改tomcat的一些配置可以正常访问shtml文件。

    注意:在shtml文件中

    <!--#include virtual="./include/header.shtml"-->表示的是导入,不是注释信息

    发布的配置如下:

    1、修改Tomcat的配置文件conf/context.xml,在标签<Content>中添加属性 privileged="true"。

    2、修改Tomcat的配置文件conf/web.xml中servlet-name=ssi的servlet配置取消注释(默认被注释掉了)

        <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>666</param-value>
            </init-param>
            <init-param>
              <param-name>isVirtualWebappRelative</param-name>
              <param-value>false</param-value>
            </init-param>
             <!-- 下面两个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>
            <load-on-startup>4</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>ssi</servlet-name>
            <url-pattern>*.shtml</url-pattern>
        </servlet-mapping>

    然后使用tomcat发布项目,访问带有shtml的项目就不会直接出现源码了(对于在页面中使用<!--# -->引入的文件也能正常显示)。

  • 相关阅读:
    POI实现Excel导入导出
    2017春季_京东_Java后端研发岗面经
    java中的IO流和多线程
    Java静态代理&动态代理&Cglib代理详解
    Java8新特性——stream流
    Java8新特性——接口默认方法
    Java8新特性——lambda函数式编程
    难题解决:Mycat数据库中间件+Mybatis批量插入数据并返回行记录的所有主键ID
    物料导出FreeMaker模板定义
    Mysql的MyISAM和InnoDB存储引擎的区别
  • 原文地址:https://www.cnblogs.com/TheoryDance/p/7216303.html
Copyright © 2011-2022 走看看