后退 刷新 前进 收藏 顶部 |   知道 黑匣子 富媒体 技术服务

apache SSI (Server Side Includes)是HTML页面中的指令 使用详解

服务器应用 liunx ... (shuke.2013-09-10 05:22)

SSI (Server Side Includes)是HTML页面中的指令,在页面被提供时由服务器进行运算,以对现有HTML页面增加动态生成的内容,而无须通过CGI程序提供其整个页面,或者使用其他动态技术。

对什么时候用SSI,而什么时候用某些程序生成整个页面的权衡,取决于页面中有多少内容是静态,有多少内容需要在每次页面被提供时重新计算。SSI是一种增加小段信息的好方法,诸如当前时间。如果你的页面大部分是在被提供时生成的,那就要另找方案了。


如何使你的Apache服务器支持SSI?

  Apache(如何在windows以及linuc下安装apache请参见另两篇文章)默认是不支持SSI的,
需要我们更改httpd.conf来进行配置。我这里以windows平台的Apache 2.0.x为例(在linux平台下与之相同),
打开conf目录下的httpd.conf文件,搜索“AddType text/html .shtml”,找到:

以下是引用片段:

  # AddType text/html .shtml

  # AddOutputFilter INCLUDES .shtml

  把这两行前面的#去掉 。

  然后搜索“Options Indexes FollowSymLinks”

  在搜索到的那一行后面添加“ Includes”

  即将该行改变为 Options Indexes FollowSymLinks Includes

  熟悉apache manual的可能会觉得比较容易。

  保存httpd.conf,重起apache即可

  到此我们就完成了对Apache SSI的设置。

SSI命令:

1、Config命令

  Config命令主要用于修改SSI的默认设置。其中:

  Errmsg:设置默认错误信息。为了能够正常的返回用户设定的错误信息,
在HTML文件中Errmsg参数必须被放置在其它SSI命令的前面,
否则客户端只能显示默认的错误信息,而不是由用户设定的自定义信息。

<!--#config errmsg="Error! Please email webmaster@mydomain.com -->

  Timefmt:定义日期和时间的使用格式。Timefmt参数必须在echo命令之前使用。

    <!--#config timefmt="%A, %B %d, %Y"-->

    <!--#echo var="LAST_MODIFIED" -->

  显示结果为:Wednesday, April 12, 2000

  Sizefmt:决定文件大小是以字节、千字节还是兆字节为单位表示。如果以字节为单位,
参数值为"bytes";对于千字节和兆字节可以使用缩写形式。
同样,sizefmt参数必须放在fsize命令的前面才能使用。

    <!--#config sizefmt="bytes" -->

    <!--#fsize file="index.html" -->

  2、Include命令

  Include命令可以把其它文档中的文字或图片插入到当前被解析的文档中,这是整个SSI的关键所在。
通过Include命令只需要改动一个文件就可以瞬间更新整个站点!

  Include命令具有两个不同的参数:

  Virtual:给出到服务器端某个文档的虚拟路径。例如:<!--#include virtual="/includes/header.html" -->

  File:给出到当前目录的相对路径,其中不能使用"../",也不能使用绝对路径。例如:<!--#include file="header.html" -->

  这就要求每一个目录中都包含一个header.html文件。


2 楼 shuke[2013-09-10 17:25]

官方文档:http://man.chinaunix.net/newsoft/ApacheManual/howto/ssi.html#configuring
进度:100% 返回服务器应用

IIS启动GZIP进行对网站压缩时,无法编辑metabase.xml的解决办法.(舒克)

图片新热点

导航


目录


    站内搜索
    首页 | W3C | ME