- SSI被称为“服务器端包含”或“服务器端嵌入”技术。是一种基于服务器端的网页制作技术。
- shtml文件就是应用了SSI技术的html文件
- SSI工作原理因为是基于服务器端的网页制作技术,所以在.shtml页面返回到客户端前,页面中的SSI指令将被服务器解析。可以使用SSI指令将其它文件、图片包含在页面中,也可以将其它的CGI程序包含在页面中,如.aspx文件。在给客户端返回的页面中不会包含SSI指令。如果SSI指令不能被解析,则浏览器会将其做为普通的HTML注释处理。
- SSI的特点速度:介于类似于.asp与.html之间。比.asp快,但比.html慢维护:SSI能使页面在维护的时候更简单,维护的效率也更高。
显示服务器端环境变量<#echo>
将文本内容直接插入到文档中<#include>
显示WEB文档相关信息<#f lastmod #f size> (如文件制作日期/大小等)
直接执行服务器上的各种程序<#exec>(如CGI或其他可执行程序)
设置SSI信息显示格式<#config>(如文件制作日期/大小显示方式)
高级SSI<XSSI>可设置变量使用if条件语句
SSI包含六大指令
1、config指令:用于修改SSI的默认设置
参数:errmsg, timefmt, sizefmt
errmsg:设置默认的错误信息,该指令必须入在其它指令的前面
示例:<!--#config errmsg="error!please email mamager!"-->
Timefmt:设置日期与时间的显示格式,需放在echo指令前
示例:
<!--#config timefmt="%A, %B %d, %Y"-->
<!--#echo var="last_modified"-->
Sizefmt:设置表示文件大小的单位。如bytes。该指令需要放在fsize指令前使用。
示例:
<!--#config sizefmt="bytes"-->
<!--#fsize
file="head.html"-->
2、Include指令:用于将其它文档或元素包含在当前文档中
参数:virtual file
virtual:给出到服务器端某个文档的虚拟路径
示例:
<!--include virtual="/includes/header.html"-->
file:给出到当前目录的相对路径,其中不能使用"../",也不能使用绝对路径
示例:
<!--include file="header.html"-->
这就要求每一个目录中都包含一个header.html文件。
3、Echo:用于显示各种服务器变量
参数:var
示例:
<!--#echo var="DOCUMENT_NAME"-->
以下是常见的服务器变量:
DOCUMENT_NAME:显示当前文档的名称
DOCUMENT_URI:显示当前文档的虚拟路径
QUERY_STRING_UNESCAPED:显示未经转义处理的由客户端发送的查询字串,其中所有的特殊字符前面都有转义符"\
DATE_LOCAL:显示服务器设定时区的日期和时间。用户可以结合config命令的timefmt参数,定制输出信息
示例:
<!--#config timefmt="%A,the %d of %B,in the year %Y"-->
<!--#echo
var="DATE_LOCAL"-->
输出结果:
Saturday, the 15 of April, in the year 2000
DATE_GMT:功能与DATE_LOCAL一样,只不过返回的是以格林尼治标准时间为基准的日期
LAST_MODIFIED:显示当前文档的最后更新时间
除了SSI环境变量之外,echo命令还可以显示以下CGI环境变量:
SERVER_SOFTWARE:显示服务器软件的名称和版本
SERVER_NAME:显示服务器的主机名称,DNS别名或IP地址
SERVER_PROTOCOL:显示客户端请求所使用的协议名称和版本,如HTTP/1.0
SERVER_PORT:显示服务器的响应端口
REQUEST_METHOD:显示客户端的文档请求方法,包括GET, HEAD, 和POST
REMOTE_HOST:显示发出请求信息的客户端主机名称
REMOTE_ADDR:显示发出请求信息的客户端IP地址
AUTH_TYPE:显示用户身份的验证方法
REMOTE_USER:显示访问受保护页面的用户所使用的帐号名称
4、Fsize:显示指定文件的大小,可以结合config命令的sizefmt参数定制输出格式
参数:file
示例:
<!--#fsize file="index_working.html"-->
5、Flastmod:显示指定文件的最后修改日期,可以结合config 命令的timefmt参数控制输出格式
参数:file
示例:
<!--#config timefmt="%A, the %d of %B, in the year
%Y"-->
<!--#flastmod file="file.html"-->
6、Exec:可以执行CGI脚本或者shell命令
参数:cmd cgi
Cmd:使用/bin/sh执行指定的字串。如果SSI使用了IncludesNOEXEC选项,则该命令将被屏蔽
Cgi:可以用来执行CGI脚本
分享到:
相关推荐
主要介绍了Nginx SSI指令配置详解,本文讲解了什么是SSI、为什么要用SSI、nginx配置SSI、页面上配置、配置示例等内容,需要的朋友可以参考下
SSI工作原理: 将内容发送到浏览器之前,可以使用“服务器端包含 (SSI)”指令将文本、图形或应用程序信息包含到网页 中。例如,可以使用 SSI 包含时间/日期戳、版权声明或供客户填写并返回的表单。对于在多个...
ssi例子ssi例子ssi例子ssi例子ssi例子ssi例子ssi例子ssi例子ssi例子ssi例子ssi例子ssi例子ssi例子ssi例子ssi例子ssi例子ssi例子ssi例子ssi例子ssi例子
使用Verilog 编程语言实现对11 bit 编码器SSI输出的读取
SSI整合开发,压缩包中包括三个文件,Struts1和Struts2都有,如果下载之后有什么疑问都可以交流,希望能帮到大家
SSI library, Logic gates verilog codes
用于将SSI协议转换成RS232协议,因为带SSI协议处理能力的单片机几乎没有
传智播客SSI开发-黎活明 包括 什么是SSI、为何要使用SSI、配置使用SSI、SSI例子、SSI指令基本格式、SSI指令-- #flastmod 和 #fsize,#echo等....。 SSI(Server Side Include),通常称为“服务器端包含”技术。.......
很详细的ssi整合详细步骤,祝大家学习进步!!!
fpga ssi之间的通信,使用fpga完成ssi的设计
ssi
刀片服务器的SSI规范,详细描述SSI规范的相关内容以及刀片服务器设计模式
抱你能学会了,要是还是不行的话,那就是你自己的问题了
SSI整合的Jar包,有需要的就赶紧下载
ssi2整合步骤,框架的整合开发文档,web开发技术,struts2,spring,I
SSI完整配置与实例,有所有的jar包,sqlServer数所库连接
本文讲述编码器的SSI BISS EnDat 通信协议。讲述了定义、组成、时序、组网等。SSI通讯协议为缩写,其全称为同步串行接口( Synchronous Serial interface )。 SSI通讯的帧格式如图1所示,数据传输采用同步方式 BiSS...
SSI技术文档 详细介绍SSI协议 并且有详细时序介绍 可根据文档编写程序
。SSI接口是Stellaris系列ARM都支持的标准外设,也是流行的外部串行总线之一 该程序控制8位led的显示 通过 SSI