代码改变世界

Linux环境下配置使用SSI

2011-10-11 17:39  ☆冷枫☆  阅读(1089)  评论(0编辑  收藏  举报
什么是ssi?

  ssi是英文server side includes的缩写,翻译成中文就是服务器端包含的意思。从技术角度上说,ssi就是html文件中,可以通过注释行调用的命令或指针。ssi 具有强大的功能,只要使用一条简单的ssi 命令就可以实现整个网站的内容更新,动态显示时间和日期,以及执行shell和cgi脚本程序等复杂的功能。ssi 可以称得上是那些资金短缺、时间紧张、工作量大的网站开发人员的最佳帮手。

  ssi最初在ncsa服务器平台上推出,在apache服务器中得到扩展和加强,目前已经可以在几乎所有的服务器上运行。本文将主要结合apache服务器介绍ssi的使用方法。


如何启动ssi?

  在apache服务器下,可以通过直接编辑服务器配置文件(http.conf)或者在需要使用ssi的目录中创建.htaccess文件启动ssi。具体来说,过程如下:

      

Apache默认不支持ssi,需要修改httpd.conf文件

 

1、查找
AddType text/html .html
AddOutputFilter includes .html
说明:将前边的#注释符去掉,如果嵌入的文件是html则写.html如果是.shtml则写上.shtml。如果两则都需要则中间以空格分割即可。

 

2、查找
<Directory  />
这里是网站根目录设置选项,(路径会有所不同)
Option 选项后加 Includes
例如:
#
# Each directory to which Apache has access can be configured with respect
# to which services and features are allowed and/or disabled in that
# directory (and its subdirectories).
#
# First, we configure the "default" to be a very restrictive set of
# features.  
#
<Directory />
    Options FollowSymLinks Includes
    AllowOverride None
    Order deny,allow
    Deny from all
    Satisfy all
</Directory>



 

 如果用户不能直接访问服务器配置文件,可以使用文件编辑器创建一个名为.htaccess的文件。注意,文件名前一定要有符号“.”,这样服务器才能知道该文件是隐藏文件,从而提高文件的安全性,避免错误操作。在.htaccess文件中需要加入以下三行文字:

options indexes followsymlinks includes
addtype application/x-httpd-cgi .cgi
addtype text/x-server-parsed-html .shtml

  完成之后可以把.htaccess文件上传到服务端的相应目录,该文件对所有子目录有效。如果用户希望在目录级上禁止cgi或shell命令,可以在.htaccess文件中的options选项行加入关键字includesnoexec。
 

 

3、保存httpd.conf修改,重起apache

 

 

做好这些就可以在当前环境下新建两个html文件来测试下。如1.html嵌入2.html可以这样来写<!--#include virtual="2.html"-->   注意引用2.html时路径要写正确。如果能够正常显示2.html中的内容,那么恭喜你配置OK了。