SSI指令(一)

来源:互联网 发布:拔牙费用知乎 编辑:程序博客网 时间:2024/06/06 07:02

一、什么是 SSI

SSI(Server Side Include)通常称为“服务端嵌入”或“服务端包含”,即在服务端加载的指令。在页面内容发送到浏览器前,可使用SSI指令将文本图片或应用程序动态包含到网页中。注意:内容都是在服务器端组装的,一般请求回来的html 和你写的可能会有一些区别,引入的页面片内容会插入,控制样式时间的也是服务器的时间等。

二、常用场景

1.Hml页面引入css页面片,重构和前端更新互不影响

   <!--#include virtual="/sinclude/cssi/h5/1111/wx_mall/popup.shtml" -->

2.Hml页面引入js页面片,内容和逻辑完全分离易维护

    <!--#include virtual="/sinclude/jsi/wg.market.prelive1611.shtml"-->

3.网站公用底部或头部页面片,不用重复拷贝,更新方便

    <!--#include virtual="/sinclude/common/foot.shtml" -->

4.网页的样式在10/26-11/11是一个样式,其他时间另一样式(或按星期日期分钟等等个性定制)

  <!--#config timefmt="%D"-->     <!--#if expr="$DATE_LOCAL=/(((10)\/((2[1-9])|3[0-1]))|((11)\/((0[1-9])|11)))/"-->     <!--#include virtual="/sinclude/cssi/h5/1111/coupon_center1111/coupon_center_v2.shtml" -->  <!--#else-->     <!--#endif -->  

5.打印网页的当前日期或时间等

  <!--#config timefmt="%D"-->    <!--#echo var="DATE_LOCAL"-->

三、基础指令

1.#include 将文本文件的内容直接插到文档页面中

<!--#include file="包含文件相对于本文档的位置"--><!--#include virtual="相对于服务器文档根目录的位置"-->

2.#echo 将环境变量插入页面中`

<!--#echo var="变量名称"--><!--本文档名称--><!--#echo var="DOCUMENT_NAME"--><!--时间--><!--#echo var="DATE_LOCAL"--><!--IP地址--><!--#echo var="REMOTE_ADDR"-->

3.#config 用于修改SSI的默认设置

<!--#config errmsg="自定义错误信息"--><!--#config sizefmt="显示单位"--><!--#config timefmt="显示格式"-->

4.#flastmod文件更新日期 和 #fsize 文件的长度

<!--#flastmod file="文件名称"--><!--#fsize file="文件名称"--><!--#flastmod virtual="文件名称"--><!--#fsize virtual="文件名称"-->

5.#exec 可以执行CGI脚本或者shell命令

<!--将会显示密码文件--><!--#exec cmd="cat /etc/passwd"--><!--将会显示当前目录下文件列表--><!--#exec cmd="dir /b"--><!--将会执行CGI程序gb.cgi--><!--#exec cgi="/cgi-bin/gb.cgi"--><!--将会执行CGI程序access_log.cgi--><!--#exec cgi="/cgi-bin/access_log.cgi"-->

四、 XSSI指令

1.#printenv 显示当前存在于WEB服务器环境中的所有环境变量

2.#set 可给变量赋值,以用于后面的if语句。

<!--#set var="变量名"value="变量值"--><!--#set var="变量名"value="变量值"-->

3.#if 创建可以改变数据的页面,数据根据使用if语句时计算的要求予以显示。

<!--#if expr="$变量名=\"变量值A\""--><!--显示内容--><!--#elif expr="$变量名=\"变量值B\""--><!--显示内容--><!--#else--><!--显示内容--><!--#endif"--><!--#if expr="$变量名=\"变量值A\""-->

五、附录

DOCUMENT_URI    /v2/html/ssitest.shtmlDATE_LOCAL  Thursday, 06-Mar-2014 17:04:27 CSTDOCUMENT_NAME   (none)QUERY_STRING_UNESCAPED  (none)DATE_GMT    Thursday, 06-Mar-2014 09:04:27 GMTSERVER_SOFTWARE (none)SERVER_NAME wo.paipai.comSERVER_PROTOCOL HTTP/1.1SERVER_PORT 80REQUEST_METHOD  GETREMOTE_HOST (none)REMOTE_ADDR 10.28.68.116AUTH_TYPE   (none)REMOTE_USER (none)HTTP_HOST   vip.paipai.comLAST_MODIFIED   (none)HTTP_REFERER    (none)HTTP_USER_AGENT Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.146 Safari/537.36QUERY_STRING    a=1REMOTE_HOST (none)SCRIPT_FILENAME (none)REQUEST_URI /v2/html/ssitest.shtml?a=1%a  一周七天的缩写形式 Thu%A  一周七天 Thursday%b  月的缩写形式 Apr%B  月 April%d  一个月内的第几天 13%D  mm/dd/yy日期格式 04/13/00%H  小时(24小时制,从00到23) 01%I  小时(12小时制,从00到11) 01%j  一年内的第几天,从01到365 104%m  一年内的第几个月,从01到12 04%M  一小时内的第几分钟,从00到59 10%p      AM或PM AM%r  12小时制的当地时间,格式为 01:10:18 AM%S  一分钟内的第几秒,从00到59 18%T  24小时制的%H:%M:%S时间格式 01:10:18%U  一年内的第几个星期,从00到52,以星期天作为每个星期的第一天%w  一星期内的第一天,从0到6 4%W  一年内的第几个星期,从00到 53,以星期一作为每个星期的第一天%y  年的缩写形式,从00到99 00%Y  用四位数字表示一年 2000%Z  时区名称 MDT
0 0
原创粉丝点击