SHTML 介绍

查找资料后自己整理了下,尽量简洁明了,让大家一看就明白。

一、什么是SHTML

    SHTML就是嵌入了服务器端命令的HTML,所嵌入的服务器命令就是SSI(SERVER SIDE INCLUDE,服务器端嵌入)。当用户浏览SHTML页面的时候,这些SSI命令会被服务器解析,用户读取的是解析后的XHTML文档,而不会看到服务器端命令。

二、SHTML中嵌入服务器端命令语法

    SHTML使用非常简单,就是在HTML页面的注释标签中嵌入进去服务器端命令:

    <!--#服务器段命令 命令名称="命令值"--> 

   注:<!--跟#服务器段命令 没有空格!必要的时候 命令名称="命令值"中 引号需转义/"

三、常用的SHTML

  1. 显示服务器端环境变量<#echo>
  2. 将文本内容直接插入到文档中<#include>
  3. 显示WEB文档相关信息<#flastmod #fsize> (如文件制作日期/大小等)
  4. 直接执行服务器上的各种程序<#exec>(如CGI或其他可执行程序)
  5. 设置SSI信息显示格式<#config>(如文件制作日期/大小显示方式)

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

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

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

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

 

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

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

  file指的是相对路径,是相对#include指令的文档所在目录。被包含的文件可以在同一级目录或其子目录中,但不可以在其上一级的目录中。

  virtual指的是WEB站点中虚拟目录的完整目录。如根目录为TEXT,被包含文件在TEXT下的INCLUDE下,那么包含的时候就为:virtual="/TEXT/INCLUDE/文件名称"

 

  <!--#flastmod file="文件名"-->文件最后的修改时间

  <!--#fsize file="文件名"-->文件的大小

 

  <!--#exec cmd="文件名"-->将程序文件嵌入到HTML文件

  <!--#exec cgi="文件名"-->将CGI文件嵌入到HTML文件

  cmd 常规应用程序

  cgi CGI脚本程序 (一般这个要禁止掉)

 

  <!--#config errmsg="自定义文件错误信息"-->

  <!--#config sizefmt="显示单位"-->

  <!--#config timefmt="显示格式"-->

  errmsg 自定义SSI执行错误信息。

  sizefmt 文件大小显示方式,默认为BYTE,可改为千字节abbrev

  timefmt 定义显示时间的格式

<!--#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"-->

  errmsg、sizefmt、timefmt这些配置命令必须在文件头,就是你显示错误信息,文件大小,本地时间之前,否则不起效,跟PHP的INI_SET()配置函数很像,嘿嘿

 

四、哪些WEB服务器支持SHTML

   目前流行的Apache、IIS、NetScape都支持SHTML。

   1、apache 中的使用:

      其中Apache使用的时候需要配置.conf文件:

      AddType text/x-server-parsed-html .shtml 将对.shtml扩展名的文件解析SSI指令

      AddType text/x-server-parsed-html .html 将对所有的.html扩展名的文件解析SSI指令

   2、IIS 中的使用:

      需要把包含SSI指令文档扩展名映射到Ssinc.dll,如:.stm .shtm .shtml

五、注意事项:

    在使用XHTML的时候会用到EXEC,其中会用到应用程序脚本,对服务器安全造成隐患,所以需要禁用掉SSI中的EXEC。

   Apache 跟 IIS 的使用方法分别为:

   Apache : access.conf 文件中删除“Options Includes ExecCGI”

   IIS:  修改SSIExecDisable元数据库

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值