`

SSI服务器包含技术

阅读更多
配置tomcat中的SSI使用方法:
1:在tomcat的安装目录/conf/context.xml中修改成<Context privileged="true">,允许服务器应用使用服务器容器自带的servlet。

2:在tomcat的安装目录/conf/web.xml中去掉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>
          <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>

3:在web应用中新建以.shtml为后缀的文件,然后在文件中使用指令:
<!--#include file="index.html|index.jsp" -->:导入相对于该文件的同级目录或者子目录的文件
<!--#include virtual="index.html"--> :导入web站点上的虚拟目录的完整路径,如果完整路径有项目名称,包括项目名称。








1.       SSI,通常称为“服务器端包含”技术。使用了SSI技术的文件默认的后缀名为.shtml,SSI技术通过在html文件中加入SSI指令让web服务器在输出标准HTML代码之前先解释SSI指令,并把解释完后的输出结果和HTML代码一起返回给客户端。

2.       SSI技术的优点:SSI技术是通用技术,它不受限于运行环境,在java、dotnet、CGI、ASP、PHP下都可以使用SSI技术;解释SSI的效率比解释JSP的效率快很多,因为JSP规范提供了太多的功能,这些功能都需要servlet引擎一一进行解释,所以效率比较低

3.       解析SSI文件最佳的服务器:Apache Http Server

4.       Tomcat5.5下配置使用SSI:

①:把$CATALINA_HOME/server/lib/servlets-ssi.renametojar的名称改为servlets-ssi.jar

②:设置$CATALINA_HOME/conf/context.xml文件,在<Context>节点添加privileged="true"属性,该属性指定我们发布的web应用有权限使用容器的servlet。当你如果需要在$CATALINA_HOME/conf/server.xml添加其它web应用时,最好也为<Context>加上privileged="true"属性,如下:

<Context debug="0" path="" docBase="E:/website" privileged="true"/>

③:在$CATALINA_HOME/ conf/web.xml开启SSI的功能,Tomcat提供了两种开启SSI的方式:一种是servlet,另一种是filter。这里我们使用Servlet开启SSI功能。

在$CATALINA_HOME/ conf/web.xml文件中找到<servlet-name>ssi</servlet-name> ,把对该Servlet的注释去掉,然后根据shtml文件的编码格式指定inputEncoding 和outputEncoding 属性值

5.       SSI指令基本格式:<!--#指令名称="指令参数“ --> 

注:<!--与#号间无空格,只有SSI指令与参数间存在空格。上面的标点="",一个也不能少。SSI指令是大小写敏感的,因此参数必须是小写才会起作用

6.       SSI指令:

1)#include:<!--#include file="文件名称"--> file 文件名是一个相对路径,该路径相对于使用 #include 指令的文档所在的目录;<!--#include virtual="文件名称"--> virtual 文件名是 Web 站点上的虚拟目录的完整路径

2)<!--#flastmod file="文件名称"--> 文件最近更新日期;<!--#fsize file="文件名称"-->

文件的长度

3)<!--#echo var="变量名称"-->  将环境变量插入到页面中

示例:

本文档名称:<!--#echo var="DOCUMENT_NAME"-->

你的IP地址:<!--#echo var="REMOTE_ADDR"-->

<!--#config timefmt="%Y-%m-%d %a %H:%M:%S"-->

现在时间:<!--#echo var="DATE_LOCAL"-->

4)<!--#set var="变量名" value="变量值"-->  给变量赋值

5)<!--#if expr="$变量名=/"变量值A/""-->

  显示内容

<!--#elif expr="$变量名=/"变量值B/""-->

  显示内容

<!--#else-->

  显示内容

<!--#endif"-->  //创建可以改变数据的页面,这些数据根据使用if语句时计算的要求予以显示


分享到:
评论

相关推荐

    服务器端包含技术SSI

    SSI(Server Side Include),通常称为“服务器端包含”技术。使用了SSI技术的文件默认的后缀名为.shtml

    新闻静态化技术整理,服务器端包含技术SSI,模板技术velocity

    新闻静态化技术整理,服务器端包含技术SSI,模板技术velocity

    服务器端包含_SSI_技术[归纳].pdf

    服务器端包含_SSI_技术[归纳].pdf

    apache ssi 使用例子

    在技术上,SSI就是在...可以不需要重新生成所有article,服务器会根据嵌入文件自动生成网页,输出到浏览器,如要修改则只需要修改嵌入的文件即可,无需重新生成所有HTML文件,服务器包含这种方式与php的include类似。

    服务器端包含、嵌入技术SSI(Server SideInc lude)详解

    主要介绍了服务器端包含、嵌入技术SSI(Server SideInc lude)详解,本文包含SSI简介、SSI的语法、SSI的一些常用命令等,SSI最明显的特征是网页的扩展名师.shtml,一些大网站也常用这种技术,需要的朋友可以参考下

    HTML静态页面引入公共html文件(ssi服务器端指令详解)

    SSI是英文Server Side Includes的缩写,翻译成中文就是服务器端包含的意思。从技术角度上说,SSI就是HTML文件中,可以通过注释行调用的命令或指针。 SSI 具有强大的功能,只要使用一条简单的SSI 命令就可以实现整个...

    SSI指令

    什么是 SHTML 使用SSI(Server Side Include)的html文件扩展名,SSI(Server Side Include),通常称为“服务器端 嵌入”或者叫“服务器端包含”,是一种类似于ASP的基于服务器的网页制作技术。 SSI工作原理:...

    传智播客SSI开发-黎活明

    传智播客SSI开发-黎活明 包括 什么是SSI、为何要使用SSI、配置使用SSI、SSI例子、SSI指令基本格式、SSI指令-- #flastmod 和 #fsize,#...SSI(Server Side Include),通常称为“服务器端包含”技术。..............

    Apache 服务器实用大全

    第二部分讨论虚拟Web站点、服务器端包含命令(SSI)以及通用网关接口(CGI)。第三部分讨论安全机制,包括如何进行用户认证和监视、如何使用外部认证程序以及如何利用数据库来管理用户访问控制。第四部分介绍高级...

    SSI讲解与案例

    服务端包含,算是一门古董级别的性能优化技术了,简单实用也很容易上手。 (本来是开源给大家的,实在是囊中羞涩,往各位需要的大哥大姐们慷慨解囊)

    Apache服务器实用大全(PDF)

    第二部分 讨论虚拟Web站点、服务器端包含命令 (SSI)以及通用网关接口(CGI)。第三部分 讨论安全机制, 包括如何进行用户认证和监视、如何使用外部认证程序以及如 何利用数据库来管理用户访问控制。第四部分 介绍...

    Apache服务器实用大全(高清中文PDF)

    第二部分讨论虚拟Web站点、服务器端包含命令(SSI)以及通用网关接口(CGI)。第三部分讨论安全机制,包括如何进行用户认证和监视、如何使用外部认证程序以及如何利用数据库来管理用户访问控制。第四部分介绍高级...

    Apache默认是不支持SSI如何给Apache增加SSI支持

    SSI翻译成中文就是服务器端包含的意思,从技术角度上说,SSI就是在HTML文件中,可以通过注释行调用的命令或指针,下面给大家介绍下如何给Apache增加SSI支持

    大型门户网站实现的十四大技术小结

    基于网络爬虫的有效URL缓存&gt; 三、生成静态文件 比如说,一个首页可能会员由多个部分组成,每个模块生成一个静态文件,然后才用服务器端包含SSI技术进行组装,其默认的后缀是.shtml 四、静态文件分布存储于独立的...

    shtml include使用方法

    机制: SSI机制是动态包含,而不是静态生成,是由web服务器比如apache在收到用户的请求时,如果解析到其中有SSI包含指令时,自动取出被包含的页面嵌入到被请求的页面中一起当做一个整体的页面发送给用户,对用户来说...

    ASP3《高级编程》(第一部分)

    4.2.3 服务器端包含指令的例子 104 4.3 ASP Server对象 109 4.3.1 ASP Server对象成员概述 109 4.3.2 创建其他对象的实例 110 4.3.3 执行其他的网页 114 4.3.4 Server对象的错误处理 118 4.3.5 获取Server对象...

    ASP3《高级编程》(第二部分)

    4.2.3 服务器端包含指令的例子 104 4.3 ASP Server对象 109 4.3.1 ASP Server对象成员概述 109 4.3.2 创建其他对象的实例 110 4.3.3 执行其他的网页 114 4.3.4 Server对象的错误处理 118 4.3.5 获取Server对象...

    PublicCMS:现代化的Java cms,由天津黑核科技有限公司开发,轻松托管千万数据,千万PV;支持静态化,服务器端包含;目前已经拥有全球0.0002%的用户,语言支持中,繁,日,英;是一个已走向海外的成熟CMS产品

    PublicCMS V4.0 简介PublicCMS是采用2020年最新主流技术开发的开源JAVACMS系统。由天津黑核科技有限公司开发,架构科学,轻松支持上千万数据,千万PV;支持全站静态化,SSI,动态页面局部静态化等为您快速建站,建设...

    [完整][中文][WEB安全测试].(美)霍普.扫描版.pdf

    [WEB安全测试].(美)霍普....12.14 以交互方式尝试服务器端包含(SSI)注入 275 12.15 系统地尝试服务器端包含(SSI)注入 276 12.16 以交互方式尝试LDAP注入 278 12.17 以交互方式尝试日志注入 280

Global site tag (gtag.js) - Google Analytics