zoukankan      html  css  js  c++  java
  • 通过shtml实现重构页面模块化构建的相关设置

    一、介绍:
       SSI是Server Side Includes的缩写,是嵌入到HTML页面的一组指令的集合。在返回请求的页面(包含SSI指令)前,服务器会处理这些指令,并用处理的结果替换指令,然   后把页面返回。这样就允许在HTML页面中添加动态产生的内容。
       SSI是向页面中添加小的信息片段的很好的方法。如果页面的大部分都是产生的则需要选择其它的解决方案。
    二、主要用途
       目前,主要有以下几种用用途:
      1、显示服务器端环境变量<#echo>
      2、将文本内容直接插入到文档中<#include>
      3、显示WEB文档相关信息<#flastmod #fsize> (如文件制作日期/大小等)
      4、直接执行服务器上的各种程序<#exec>(如CGI或其他可执行程序)
      5、设置SSI信息显示格式<#config>(如文件制作日期/大小显示方式) 高级SSI<XSSI>可设置变量使用if条件语句。
    三、设置Tomcat
          Tomcat对SSI提供了支持,但在默认的情况下这种支持是关闭的。如果你用Tomcat做为HTTP服务器并且需要SSI,那么需要自己来设置。

    四、设置方法如下:

             1、Tomcat5.X             

                  在$CATALINA_BASE/server/lib/目录下找到servlets-ssi.renametojar文件
                  将这个文件重命名为servlets-ssi.jar
                  在$CATALINA_BASE/conf/目录下找到web.xml文件
                  使用SSI Servlet就删除在SSI servlet和servlet-mapping周围的注释
                  使用SSI filter就删除在SSI filter和filter-mapping周围的注释

             2、Tomcat6.X

                  $CATALINA_BASE/conf/servlet.xml下的当前项目的 Context中加入了privileged="true"的属性。

             3、weblogic8.X

                  1) 使用FRAME框架 
                  2) 配置web.xml配置文件

                  web.xml:   
                  <servlet>  
                      <servlet-name>shtml</servlet-name>  
                      <servlet-class>weblogic.servlet.ServerSideIncludeServlet</servlet-class>  
                  </servlet>   
                  <servlet-mapping>  
                      <servlet-name>shtml</servlet-name>  
                      <url-pattern>*.shtml</url-pattern>   
                  </servlet-mapping>

    五、乱码的解决:在
    $CATALINA_BASE/conf/web.xml中的ssi servlet配置中添加以下初始配置:  
    <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>
    其中
    utf-8应该与你页面的编码方式相同
    在shtml页面里, 就可以引用静态文件了
    <!--#include file="test.html"--> 相对路径

    <!--#include virtual="/assets/inc/footer.html"--> 绝对路径

  • 相关阅读:
    数据结构_队列和滑动窗口
    数据结构_栈和单调栈
    数据结构_链表及邻接表
    JavaSE多线程
    AppExtension总结
    FlutterBloc 2.1.1迁移至6.0.6
    iOS通知总结
    Provider 4.3.2+2 f
    Fish-Redux 研究
    王道考研复习-操作系统-内存管理(三)
  • 原文地址:https://www.cnblogs.com/terrylin/p/2754935.html
Copyright © 2011-2022 走看看