SSI是指Server-side include(服务器端包含指令)
使用服务器端包含指令可以将文件内容以及有关文件的信息,如文件的大小包含到HTML页中。还可以在ASP页中使用一些服务器端包含指令。
一共有6条
#config:指定返回到客户端浏览器的错误消息、日期和文件大小所使用的格式。
#echo:在 HTML 页中插入环境变量的值。
#exec:运行一个应用程序或一条 shell 命令并将输出插入到 HTML 页中。
#flastmod:将文件修改日期插入到 HTML 页中。
#fsize:将文件大小插入到 HTML 页中。
#include:在 HTML 或 ASP 页中包含文件。
因为包含 SSI 指令的文件需要特殊处理,所以必需给 SSI 文件一个 SSI 文件扩展名。默认的扩展名为 .stm、.shtm 和 .shtml。但是有的SSI指令可以在其他文件中使用。
1.包含文件
要包含文件,请使用 #include 指令。例如,需要在 HTML 页中插入一个名为 char.inc 的文件时,可在 HTML 页中使用下列指令:(可在ASP中使用)
<!-- #include file="char.inc" -->
包含 #include 指令的 HTML 文件必须是您 Web 站点上发布的文件。
要通过指定当前目录的相对路径定位被包含文件,请使用 file 参数。要通过指定文件的完整虚拟路径来定位被包含文件,请使用 virtual 参数。
2.包含应用程序的输出
要运行应用程序或 shell 命令,请使用 #exec 指令。该应用程序可以是 CGI 程序、ASP 应用程序或 ISAPI 应用程序。应用程序的路径必须是完整的虚拟路径或 URL。向应用程序传递参数的方法是在该应用程序名后跟一个问号(?)和由加号(+)连接起来的一列参数。该指令只能在 HTML 页中使用,而不能在 ASP 页中使用。
参数 CGI 运行一个应用程序,如 CGI 脚本、ASP 或 ISAPI 应用程序。
参数 CMD 运行 shell 命令。
3.包含文件的大小
#fsize将指定文件的大小插入 HTML 页中。该指令只能在 HTML 页中使用,而不能在 ASP 页中使用。
参数设置同#include
默认情况下,以千字节为单位表示文件大小。可以用带有 sizefmt 选项的 #config 指令改变计量单位。
4.#config
#config指定返回给客户端浏览器的错误信息、日期和文件大小的格式。该指令只能在 HTML 页中使用;不能在 ASP 页中使用。
参数 ERRMSG
控制在处理 SSI 指令的过程中发生错误时返回给客户端浏览器的消息。禁止详细的调试信息,而只提供一个简短的错误消息。
例:<!-- #config errmsg="You are wrong!" -->
参数 TIMEFMT
指定返回给客户端浏览器的日期格式。String 参数指定格式。可以通过在 String 中使用格式化标记来提取日期中的个别部分,例如,一周或一个月中的某天。(格式化标记与您在使用 ANSI C 的 strftime 函数时的那些标记完全相同)。
%a 一周中某天的缩写(例如,Mon)。
%A 一周中某天的全称(例如,Monday)。
%b 月份的缩写(例如,Feb)。
%B 月份的全称(例如,February)。
%c 当地的日期和时间的表示(例如,05/06/91 12:51:32)。
%d 以十进制数字表示的一个月中的某天 (01-31)。
%H 24 小时格式 (00-23)。
%I 12 小时格式 (01-12)。
%j 以十进制数字表示一年中的某天 (001-366)。
%m 以十进制数字表示的月份 (01-12)。
%M 以十进制数字表示的分 (00-59)。
%p 当地的上午或下午指示符(例如,PM)。
%S 以十进制数字表示的秒 (00-59)。
%U 以十进制数字表示一年中的某一周,星期日作为一周的开始 (00-51)。
%w 以十进制数字表示一周中的某一天,星期天是第一天 (0-6)。
%W 以十进制数字表示一年中的某一天,星期一作为一周的开始 (00-51)。
%x 当地的日期表示(例如,05/06/91)。
%X 当地的时间表示(例如,12:51:32)。
%y 以十进制数字表示的不带有世纪的年(例如,69)。
%Y 以十进制数字表示的带有世纪的年(例如,1969)。
%z, %Z 时区全称或缩写;如果不知道时区,则没有字符。
%% 百分号。
例:<!-- #config timefmt="%H:%M:%S" -->
参数 SIZEFMT 后面跟ABBREV表示以千字节为单位,跟BYTE表示以字节为单位
例:<!-- #config sizefmt="bytes" -->
5.#ECHO 类似于 ASP 中的 Response.ServerVariables
不详细介绍了,实在太多了
REMOTE_ADDR、QUERY_STRING 等,应该会用吧
6.#flastmod 将指定文件的修改时间插入 HTML 页。该指令只能在 HTML 页中使用,而不能在 ASP 页中使用。
参数设置同#include
就这么多了,写得累死了,祝大家使用顺利。