设置Apache支持shtml(SSI)


关键词

Apache 支持shtml 支持SSI

摘要

本文介绍如何设置Apache的配置文件,以使Apache支持shtml,即SSI(服务器端包含文件)。

先说一下什么是shtml,什么是SSI,其实是一回事。先说SSI吧,SSI全称是Server Side Including,即服务器端包含文件。简单的说,就是静态网页中可以包含静态网页,而不是使用框架。我们知道,要在一个页面中包含另一个页面,动态语言如ASP、PHP等可以做到,但不使用动态语言的情况下,SSI就是一个很方便的技术。

那么回过头来看,什么是shtml呢,它就是包含了其它静态页面的html页面。为了显示它与别的html文件的不同,于是它的文件后缀改成了shtml或shtm。

下面我们看看在Apache中,如何修改配置文件,让Apache服务器支持shtml格式的文件。要设置Apache支持shtml,首先必须要给配置文件指定Option选项:

Options +Includes

这个指令的意思让Apache支持服务器端包含。但现在Apache还不知道哪些文件是服务器端包含文件,需要特别指定一下,如何指定呢,有两种方法:

第一,指定后缀类型,再加Filter

AddType text/html .shtml
AddOutputFilter INCLUDES .shtml

假如我们的SSI文件是以.shtml后缀命名的,那上面的指定就告诉服务器shtml服务器在输出时进行服务器端包含处理。非.shtml的文件,即便有包含指令,也不会被解析。这种做法有一个缺陷,那就是文件后缀必须修改为.shtml。如果一个已经运营一段时间的网站,要修改网页文件名,是一件很困难的事,对SEO也会有很大的影响。

第二,使用XBitHack指令

XBitHack on

XBitHack告诉Apache解析所有设置了执行位的文件中的SSI指令。这样,无需修改文件名(即还使用.html作为文件后缀),只要用chmod使文件变成可执行的,就可以对现有页面增加SSI指令。

Linux下可以使用这个命令来加执行位:chmod +x page.html。

在Windows下洪哥暂时没有找到相应的办法来设置执行位,不过在Windows平台下,我们使用IIS来搭建服务器。IIS中有一个“服务器端包含文件”的扩展,启用它就可以使用IIS支持.shtml和.shtm的文件了。

关于设置Apache支持shtml(SSI),本文就介绍这么多,希望对您有所帮助,谢谢!

 

要饭二维码

洪哥写文章很苦逼,如果本文对您略有帮助,可以扫描下方二维码支持洪哥!金额随意,先行谢过!大家的支持是我前进的动力!

文章的版权

本文属于“洪哥笔记”原创文章,转载请注明来源地址:设置Apache支持shtml(SSI):http://www.splaybow.com/post/apache-shtml-ssi.html

如果您在服务器运维、网络管理、网站或系统开发过程有需要提供收费服务,请加QQ:8771947!十年运维经验,帮您省钱、让您放心!
亲,如果有需要,先存起来,方便以后再看啊!加入收藏夹的话,按Ctrl+D

« Apache使用通用日志格式记录日志 配置Apache防止webshell上传 »

相关文章:

Apache2.4目录访问控制指令require  (2015/6/22 10:47:21)

Win下apache绑定域名  (2014/6/3 11:36:40)

apache增加mod_rewrite模块  (2014/3/29 11:54:43)

配置Apache防止webshell上传  (2014/3/27 11:09:34)

设置Apache支持shtml(SSI)  (2014/2/12 9:49:01)

Apache使用通用日志格式记录日志  (2014/1/27 20:55:04)

Apache中为什么不使用.htaccess文件?  (2014/1/15 14:48:33)

Apache中的.htaccess文件  (2014/1/15 14:40:52)

Apache绑定IP绑定端口  (2014/1/8 17:50:59)

Apache开启gzip  (2013/12/29 21:23:26)