1.简介
SSI(Server Side Include),通常称为服务器端嵌入,是一种类似于ASP的基于服务器的网页制作技术。大多数(尤其是基于Unix平台)的WEB服务器如Netscape Enterprise Server等均支持SSI命令。
SSI工作原理:
在一个通常以.shtml为扩展名的SSI文件中,标准的HTML编码会被直接送到浏览器上,而内嵌Perl语言形式的SSI命令则先被网络服务器解释执行,如果是标准输出的话,输出信息也将作为标准的HTML而被送至浏览器。
SSI简单应用实例:
<html>
<head><title>my first SSI page</title></head>
<body>
欢迎您(于<!--# echo var="date_local" -->)访问本网站。
</html>
标记在上面文档中的“<!--# -->”结构表明了SSI命令会被服务器翻译执行,而不是直接送到客户端。我们可以在浏览器中用“查看→源文件"观察源代码:
<html>
<head><title>my first SSI page</title></head>
<body>
欢迎您(于dec 06 1999)访问本网站。
</html>
我们发现,文档中的html被直接传到了客户端,而SSI命令得到了执行。SSI代码在客户端是不可见的,客户端只能看到它执行的效果。
一个比较实用的例子
网站维护常常碰到的一个问题是,网站的结构已经固定,却为了更新一点内容而不得不重做一大批网页。SSI提供了一种简单、有效的方法来解决这一问题,它将一个网站的基本结构放在几个简单的HTML文件中(模板),以后我们要做的只是将文本传到服务器,让程序按照模板自动生成网页,从而使管理大型网站变得容易。如:
<html>
<head><title>SSI example</title></head>
<body>
<h2>新闻</h2>
<p><!--# include file="news.txt" -->
<p>新闻更新日期:<!--# flastmod file="news.txt" -->
</body>
</html>
将频繁的更新内容放在news.txt中,SSI会通过 include 指令将其内容包含到输出的网页中。通过 flastmod 指令可在网页中显示new.txt的最近一次更改日期。
构建学习SSI的环境
支持SSI的web server 很多,如可以选用omnihttpd profeSSIonal, 这是一款win 95/98平台下的支持SSI的web服务器。可直接从http://www.omnicron.ab.ca/httpd/下载这一共享软件。