最近的项目中,涉及到.shtml文件,以前没有接触过,那什么是shtml呢?
下面的解释来自百度百科:
ssi是Server Side Include的首字母缩略词。包含有嵌入式服务器方包含命令的 HTML 文本。在被传送给浏览器之前,服务器会对 SHTML 文档进行完全地读取、分析以及修改。
简介
shtml和asp 有一些相似,以shtml命名的文件里,使用了ssi的一些指令,就像asp中的指令,你可以在SHTML文件中写入SSI指令,当 客户端 访问这些shtml文件时, 服务器 端会把这些SHTML文件进行读取和解释,把SHTML文件中包含的SSI指令解释出来 比如:你可以在SHTML文件中用SSI指令引用其他的html文件(#include ),服务器传送给客户端的文件,是已经解释的SHTML不会有SSI指令。它实现了HTML所没有的功能,就是可以实现了动态的SHTML,可以说是HTML的一种进化吧。像新浪的新闻系统就是这样的,新闻内容是固定的但它上面的广告和菜单等就是用#include引用进来的。编辑本段用途
主要有以下几种用用途: 1.显示服务器端环境变量<#echo> 2.将文本内容直接插入到文档中<#include> 3.显示WEB文档相关信息<#flastmod #fsize> (如文件制作日期/大小等)
了解了.shtml后,那怎么样能够让服务器支持呢?比如include等指令?
如何让apache支持.shtml 让apache支持include标签
第一步,修改httpd.conf文件中,增加文件后缀
AddType text/html .shtml
AddHandler server-parsed .shtml
第二步:继续修改,增加options属性
<Directory />
Options FollowSymLinks MultiViews Includes
AllowOverride None
Allow from all
</Directory>