什么是shtml呢?
使用SSI(Server Side Include)的html文件扩展名,SSI(Server Side Include),通常称为"服务器端嵌入"或者叫"服务器端包含",是一种类似于ASP的基于服务器的网页制作技术。默认扩展名是 .stm、.shtm 和 .shtml。
什么是SSI?
SSI是英文Server Side Includes的缩写,翻译成中文就是服务器端包含的意思。从技术角度上说,SSI就是在HTML文件中,可以通过注释行调用的命令或指针。SSI具有强大的功能,只要使用一条简单的SSI命令就可以实现整个网站的内容更新,时间和日期的动态显示,以及执行shell和CGI脚本程序等复杂的功能。 网站维护常常碰到的一个问题是,网站的结构已经固定,却为了更新一点内容而不得不重做一大批网页。SSI提供了一种简单、有效的方法来解决这一问题,它将 一个网站的基本结构放在几个简单的HTML文件中(模板),以后我们要做的只是将文本传到服务器,让程序按照模板自动生成网页,从而使管理大型网站变得容易。
实现方法
建立头文件
head.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> </head><body> <div style="background-color:#00CC66;boder:1px groove orange ">这是头</div>
foot.html
这是尾 </body></html>
连接头和尾
linuxtone.shtml
<!--#include file="head.html"--> <hr> <b>头尾文件内容都显示。表示SSI工作正常。shtml显示正常</b> <hr> <!--#include file="foot.html"-->
配置文件很简单,apache配置如下:修改如下几处
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
Options Indexes FollowSymLinks includes
includes 为追加
你要是感觉麻烦可以用以下命令替换。
sed -i 's##AddType text/html .shtml#AddType text/html .shtml#' /usr/local/apachefile/httpd.conf
sed -i 's##AddOutputFilter INCLUDES .shtml#AddOutputFilter INCLUDES .shtml#' /usr/local/apachefile/httpd.conf
sed -i 's#Options Indexes FollowSymLinks#Options Indexes FollowSymLinks includes #' /usr/local/apachefile/httpd.conf
shtml 的压缩方法不同于js css php,方法如下:
AddOutputFilter INCLUDES;DEFLATE shtml