apache SHTML网页SSI使用详解

方法一:下面是详细的设置apache支持shtml的设置步骤
开启includes模块运行shtml
0、开启php环境安装目录 (我的为D:\wamp\Apache2\conf下) 的httpd.conf 文件中的(大概408-409行处):
1、 AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
2、(F:/shz 为运行文件存放的地方)
DocumentRoot "F:/shz" (大概150处)
<Directory "F:/shz"> (大概178处)
3、在Options Indexes FollowSymLinks 后面添加 +Includes
如:Options Indexes FollowSymLinks +Includes (大概197处):
需重启apache);
方法二:如何让apache支持.shtml 让apache支持include标签
打开conf目录下的httpd.conf文件,搜索“AddType text/html .shtml”,搜索结果:
修改为:


代码如下:

AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
Options Indexes FollowSymLinks includes

保存httpd.conf,重起apache即可。
到此我们就完成了对Apache SSI的设置.
<!--#include file="index.php"-->

个人觉得SSI的好处是静态化中局部动态化的处理比较方便,比如新闻中的留言

以下是详细的说明介绍
因为批量修改起来很不方面,所以我们总希望能将页脚与页尾include到html文件中来。html属于客户端解析形的格式化语言,自4.0后几乎很难再有大的变动(毕竟很多浏览器只按4.0标准来解析),所以至今也没include这样的概念。而html的框架(frame与iframe)虽然可以用来包含首页与页脚文件,但使用frame与iframe的概念与动态页面(asp,jsp,php等)的include那样不同,frame与iframe的主体页面与被包括的页的不是一个页面,而通过include的方式调用的页面主体页面与被包括的页面仍然是一个页面,这样页面再加载的时就没速度的影响,更不会有多个窗口这样的问题。当然frame与iframe的作用还是挺大的,只是这与include这样包括页面进来的概念不同。

  除frame与iframe之外,常用的调用文件的方法还有采用js。这与include概念倒是很接近,但可以需要客户端js的支持,而且修改也不很方面,因为被包括的js是通过document.write来输出html代码,这样虽然能达到效果,可js毕竟执行客户端动态效果更好,比如现在较流行的AJAX。所以无论是frame/iframe还是js都与include不太一样(倒是Dreamweaver中的library与include很像,可惜只能用在Dreamweaver中),而我们有时页面有很多静态页面,内容不是动态的且没有规律可循,更不好做到数据库里去。如新浪的新闻之类的,这时我们可以采用shtml的方式来做这些页面。

  那什么是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文件中(模板),以后我们要做的只是将文本传到服务器,让程序按照模板自动生成网页,从而使管理大型网站变得容易。

  如何使你的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文件。

(0)

相关推荐

  • apache与iis下让html格式的页面也同样具有shtml的动态解析

    apache下实现方法: apache的配置文件httpd.conf中加入这行即可: AddOutputFilter INCLUDES .shtml .html iis下原理一说大家就知道了默认情况下.shtm的解析用的是C:\WINDOWS\system32\inetsrv\ssinc.dll这个dll文件.我们可以将html格式的修改成用这个dll解析即可,也可以让html有asp的解析.修改后如下:没有特殊需要,不建议这样操作.

  • 让Apache支持shtml实现include文件解析的配置方法

    1. 确认加载include.so模块,将注释去掉: LoadModule include_module libexec/apache2/mod_include.so 2. AddType部分去掉这两段注释: AddType text/html .shtml AddOutputFilter INCLUDES .shtml 3. Directory目录权限里面找到 Options Indexes FollowSymLinks 增加Includes修改为: Options Indexes Follo

  • 配置Apache支持shtml(SSI)的方法

    打开http.conf文件,搜索shtml 把最前两行的#号去掉,即成如下 如是要想整个服务器配置shtml的话 再搜索Options Indexes FollowSymLinks 在里面添加Includes如下所示:] OK 重庆apache 然后测试,建立两个文件,其实一个叫header.shtml和一个index.shtml header.shtml代码如下: 用了两种形式的包含:如果想要了解,请找相关文档 然后访问: shtml配置成功...很好很强大吧. 下面再说一下如是不是全局配置,

  • Apache支持 shtml和include文件解析

    Apache支持include文件解析shtml首先要应该修改Apache配置文件httpd.conf 1. 确认加载include.so模块,将注释去掉: 复制代码 代码如下: LoadModule include_module libexec/apache2/mod_include.so 2. AddType部分去掉这两段注释: 复制代码 代码如下: AddType text/html .shtml AddOutputFilter INCLUDES .shtml 3. Directory目录

  • 让Apache支持cgi、SSI、shtml的配置方法

    1.首先明确,只能够指定某个确定的目录,支持cgi,即运行该目录执行cgi程序:否则不太安全.寻找: 复制代码 代码如下: #    # "C:/Program Files/Apache Group/Apache/cgi-bin" should be changed to whatever your ScriptAliased    # CGI directory exists, if you have that configured.    #    <Directory &q

  • apache SHTML网页SSI使用详解

    方法一:下面是详细的设置apache支持shtml的设置步骤开启includes模块运行shtml 0.开启php环境安装目录 (我的为D:\wamp\Apache2\conf下) 的httpd.conf 文件中的(大概408-409行处): 1. AddType text/html .shtml AddOutputFilter INCLUDES .shtml 2.(F:/shz 为运行文件存放的地方) DocumentRoot "F:/shz" (大概150处) <Direct

  • phpstudy apache开启ssi使用详解

    目录 SSI(server-side includes)能帮我们实现什么功能: SSI指令基本格式 phpstudy apache开启ssi步骤 实现步骤1: 实现步骤2: 实现步骤3: 实现步骤4: 实现步骤5: SSI是英文Server Side Includes的缩写,翻译成中文就是服务器端包含的意思.从技术角度上说,SSI就是在HTML文件中,可以通过注释行调用的命令或指针.SSI具有强大的功能,只要使用一条简单的SSI 命令就可以实现整个网站的内容更新,时间和日期的动态显示,以及执行s

  • 部署Nginx+Apache动静分离的实例详解

    Nginx动静分离介绍 Nginx的静态处理能力很强,但是动态处理能力不足,因此,在企业中常用动静分离技术 针对PHP的动静分离 静态页面交给Nginx处理 动态页面交给PHP-FPM模块或Apache处理 在Nginx的配置中,是通过location配置段配合正则匹配实现静态与动态页面的不同处理方式 反向代理原理 Nginx不仅能作为Web服务器,还具有反向代理.负载均衡和缓存的功能 Nginx通过proxy模块实现将客户端的请求代理至上游服务器,此时nginx与上游服务器的连接是通过http

  • 如何在Linux操作系统下安装Apache服务的方法实例详解

    链接下载: 操作环境 VMware虚拟机中CentOS 7.6 SecureCRT Xftp(Xmanager) 需求分析 使用Apache服务实现访问http 操作步骤 1.挂载光盘 [root@localhost ~]# mount /dev/cdrom /mnt 查看是否挂载 [root@localhost ~]# df -Th 2.从源码包编译安装程序 (编译安装) [root@localhost Packages]# yum -y install gcc gcc-c++ make 3.

  • JSP动态网页开发原理详解

    一.什么是JSP?     JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术. JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比html而言,html只能为用户提供静态数据,而Jsp技术允许在页面中嵌套java代码,为用户提供动态数据. 二.JSP原理 2.1.Web服务器是如何调用并执行一个jsp页面的? 浏览器向服务器发请求,不管访问的是什么资源,其实都是在访问Servlet,所以当访问一个jsp

  • JavaScript web网页入门级开发详解

    第三篇:❤三种方式俯瞰后端数据接收❤(建议收藏) 第二篇:玩转web表单网页快速开发(❤建议收藏❤) 一.前言 提前学习web的有关知识,那我们来认识这个神乎怪哉的东西. 我的idea是中文版的,不过区别不大. 第一步:首先创建一个新项目,按照图示 第二步:起个任意名字,然后图示 第三步:这个你在项目里创建新项目的时候会弹出,弹出建议点新窗口 第四步:按照图示点击即可 第五步:注意圈起来的要一样 第六步:这两个名字任意的 第七步:按图示操作即可 第八步:直接点完成即可 第九步:如图 第十步:依次

  • Apache和Nginx的优缺点详解_动力节点Java学院整理

    Apache和Nginx比较 功能对比 Nginx和Apache一样,都是HTTP服务器软件,在功能实现上都采用模块化结构设计,都支持通用的语言接口,如PHP.Perl.Python等,同时还支持正向和反向代理.虚拟主机.URL重写.压缩传输.SSL加密传输等. 在功能实现上,Apache的所有模块都支持动.静态编译,而Nginx模块都是静态编译的, 对FastCGI的支持,Apache对Fcgi的支持不好,而Nginx对Fcgi的支持非常好: 在处理连接方式上,Nginx支持epoll,而Ap

  • apache zookeeper使用方法实例详解

    本文涉及了Apache Zookeeper使用方法实例详解的相关知识,接下来我们就看看具体内容. 简介 Apache Zookeeper 是由 Apache Hadoop 的 Zookeeper 子项目发展而来,现在已经成为了 Apache 的顶级项目.Zookeeper 为分布式系统提供了高效可靠且易于使用的协同服务,它可以为分布式应用提供相当多的服务,诸如统一命名服务,配置管理,状态同步和组服务等. Zookeeper 接口简单,开发人员不必过多地纠结在分布式系统编程难于处理的同步和一致性问

  • Mac版PhpStorm之XAMPP整合apache服务器配置的图文教程详解

    选择在PhpStorm集成apache服务器,下面是我自己的亲测的步骤. 1.如何修改apache默认端口 xampp apache默认的http访问端口是80 修改完成后在xampp中重启apache. 2.配置流程 打开Settings / Preferences 找到 Build, Execution, Deployment 选项,点击 Deployment 添加如下: 因为我们修改了默认端口80,所以这里一定要指明端口号.目录是/Applications/XAMPP/xamppfiles

  • apache commons工具集代码详解

    Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动.下面是我这几年做开发过程中自己用过的工具类做简单介绍. 组件 功能介绍 BeanUtils 提供了对于JavaBean进行各种操作,克隆对象,属性等等. Betwixt XML与Java对象之间相互转换. Codec 处理常用的编码方法的工具类包 例如DES.SHA1.MD5.Base64等. Collections java集合框架操作. Compress java提供文件打包 压缩类库. Con

随机推荐