视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
STHML教程(2)
2020-11-27 15:33:56 责编:小采
文档

SSI指令基本格式

程序代码:

<!-- 指令名称="指令参数">

示例:

<!--#include file="info.htm"-->

说明:

  1. <!-- -->是HTML语法中表示注释,当WEB服务器不支持SSI时,会忽略这些信息。

  2. #include 为SSI指令之一。

  3. file 为include的参数, info.htm为参数值,在本指令中指将要包含的文档名。

注意:

  1. <!--与#号间无空格,只有SSI指令与参数间存在空格。

  2. 上面的标点="",一个也不能少。

  3. SSI指令是大小写敏感的,因此参数必须是小写才会起作用。

SSI指令使用详解

#echo 示范

作用:将环境变量插入到页面中。

语法:

<!--#echo var="变量名称"-->

示例:

<!--#echo var="DOCUMENT_NAME"--> 本文档名称
<!--#echo var="DATE_LOCAL"--> 现在时间
<!--#echo var="REMOTE_ADDR"--> 你的IP地址

#include 示范

作用:将文本文件的内容直接插入到文档页面中。

语法:

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

file 文件名是一个相对路径,该路径相对于使用 #include 指令的文档所在的目录。被包含文件可以在同一级目录或其子目录中,但不能在上一级目录中。如表示当前目录下的的nav_head.htm文档,则为file="nav_head.htm"。
virtual 文件名是 Web 站点上的虚拟目录的完整路径。如表示相对于服务器文档根目录下hoyi目录下的nav_head.htm文件;则为file="/hoyi/nav_head.htm"

参数:

file 指定包含文件相对于本文档的位置
virtual 指定相对于服务器文档根目录的位置

注意:

  1. 文件名称必须带有扩展名。

  2. 被包含的文件可以具有任何文件扩展名,我觉得直接使用htm扩展名最方便,微软公司推荐使用 .inc 扩展名(这就看你的爱好了)。

示例:

<!--#include file="nav_head.htm"--> 将头文件插入到当前页面
<!--#include file="nav_foot.htm"--> 将尾文件插入到当前页面

#flastmod 和 #fsize 示范

作用:

#flastmod 文件最近更新日期
#fsize 文件的长度

语法:

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

参数:

file 指定包含文件相对于本文档的位置 如 info.txt 表示当前目录下的的info.txt文档
virtual 指定相对于服务器文档根目录的位置 如 /hoyi/info.txt 表示

注意:文件名称必须带有扩展名。

示例:

<!--#flastmod file="news.htm"--> 将当前目录下news.htm文件的最近更新日期插插入到当前页面
<!--#fsize file="news.htm"--> 将当前目录下news.htm的文件大小入到当前页面

#exec 示范

作用:将某一外部程序的输出插入到页面中。可插入CGI程序或者是常规应用程序的输入,这取决于使用的参数是cmd还是cgi。

语法:

<!--#exec cmd="文件名称"-->
<!--#exec cgi="文件名称"-->

参数:

cmd 常规应用程序
cgi CGI脚本程序

示例:

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

注意:从上面的示例可以看出,这个指令相当方便,但是也存在安全问题。

禁止方法:

  1. Apache,将access.conf中的"Options Includes ExecCGI"这行代码删除;

  2. 在IIS中,要禁用 #exec 命令,可修改 SSIExecDisable 元数据库;

#config

作用: 指定返回给客户端浏览器的错误信息、日期和文件大小的格式。

语法:

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

参数:

errmsg 自定义SSI执行错误信息,可以为任何你喜欢的方式。
sizefmt 文件大小显示方式,默认为字节方式("bytes")可以改为千字节方式("abbrev")
timefmt 时间显示方式,最灵活的配置属性。

示例:显示一个不存在文件的大小

<!--#config errmsg="服务器执行错误,请联系管理员 yiho@126.com,谢谢!"-->
<!--#fsize file="不存在的文件.htm"-->

以千字节方式显示文件大小

语法:

<!--#config sizefmt="abbrev"-->
<!--#fsizefile="news.htm"-->

以特定的时间格式显示时间

<!--#config timefmt="%Y年/%m月%d日 星期%W 北京时间%H:%M:%s,%Y年已过去了%j天 今天是%Y年的第%U个星期"-->
<!--#echo var="DATE_LOCAL"--> 显示今天是星期几,几月,时区
<!--#config timefmt="今天%A, %B ,服务器时区是 %z,是"-->
<!--#echo var="DATE_LOCAL"-->

下载本文
显示全文
专题