shtml网页SSI使用详解

合集下载

shtml入门教程(超详细)

shtml入门教程(超详细)

超级详细shtml教程SSI有什么用?之所以要扯到ssi,是因为shtml--server-parsed HTML 的首字母缩略词。

包含有嵌入式服务器方包含命令的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> (如文件制作日期/大小等)4、直接执行服务器上的各种程序<#exec>(如CGI或其他可执行程序)5、设置SSI信息显示格式<#config>(如文件制作日期/大小显示方式) 高级SSI<XSSI>可设置变量使用if条件语句。

使用SSISSI是为WEB服务器提供的一套命令,这些命令只要直接嵌入到HTML文档的注释内容之中即可。

如:<!--#include file="info.htm"-->就是一条SSI指令,其作用是将"info.htm"的内容拷贝到当前的页面中,当访问者来浏览时,会看到其它HTML文档一样显示info.htm其中的内容。

SSI应用详解

SSI应用详解

SSI应用详解,举例说明
解释下吧.举个例子,打开腾讯的新闻内页,右侧的推荐列表总是最新的,不管你当前的页面是8月的还是1
月的,右侧的最新新闻总是即时的,开始觉得可能是很频繁的生成静态文件,但是很快被自己否定了,很占资源,麻烦.后来也想到靠js,但是查看了TX的源码,发现也不是,代码直接写到当前页面了.于是后来一直百思不得其解.
最近这个问题算是解决了.
SSI是英文Server Side Includes的缩写,翻译成中文就是服务器端包含的意思。

从技术角度上说,SSI就是在HTML文件中,可以通过注释行调用的命令或指针。

SSI具有强大的功能,只要使用一条简单的SSI 命令就可以实现整个网站的内容更新,时间和日期的动态显示,以及执行shell和CGI脚本程序等复杂的功能。

SSI 可以称得上是那些资金短缺、时间紧张、工作量大的网站开发人员的最佳帮手。

本文将主要结合Apache服务器介绍SSI的使用方法。

服务器端配置ssi的方法可以参考下面的网址,我就不废话了,很简单.
/articles/275.shtml
/newsoft/ApacheManual/howto/ssi.html
/docs/2.2/howto/ssi.html
然后程序里的实现方式:
PHP代码
模板里是这样的:
XML/HTML代码
然后,生成的静态文件里,这一部分的代码是这样的(在服务器里看源码):
XML/HTML代码
在客户端查看的时候,就变成html代码了.呵呵.
ssi的内容其实就是html代码.只是为了方便大量的页面对他的调用,即时的调用.所以才出现的一种技术.
哎,孤陋寡闻,困扰我多年啊.。

Apache 开启SSI配置

Apache 开启SSI配置

Apache 开启SSI配置1、去掉AddType text/html .shtml,AddOutputFilter INCLUDES .shtml前面注释AddHandler server-parsed .shtmlAddType text/html .shtml .html .htmAddOutputFilter INCLUDES .shtml .html .htm2、查找Options Indexes FollowSymLinks在后面加上INCLUDES 注意,SSI确实可以利用shell来执行命令,这个功能是极度危险的,因为它会执行任何包含在exec标记中的命令。

如果用户有可能修改你的网页内容,那么你一定要关闭这个功能。

可以在Options指令中加上IncludesNOEXEC参数,以关闭exec功能,同时又保留SSI。

<Directory "/wwwroot"> #修改wwwroot网站目录# Options FollowSymLinks# AllowOverride None# Order deny,allow# Deny from allOptions FollowSymLinks INCLUDES IncludesNOEXECAllowOverride None</Directory>3、重新启动apache ,ok你的html、shtml就可以加载页面了。

4、用include命令包含页面。

include元素能按file属性或virtual属性判断应该包含的文件。

file属性是一个相对于当前目录的文件路径,即不能是一个绝对路径(以"/"开头)或包含"../"的路径。

virtual属性可能更有用,它是一个相对于被提供的文档的URL ,可以以"/"开头,但必须与被提供的文档位于同一服务器上。

asp.netshtml在iis中运行环境设置

asp.netshtml在iis中运行环境设置

shtml在iis中运行环境设置 shtml在iis中运行环境设置在IIS中运行shtml文件需要在“Web服务扩展”中允许“在服务器端得包含文件”(如图)。

每一个网页或者说是web页都有其固定的后缀名,不同的后缀名对应着不同的文件格式和不同的规则、协议、用法,最常见的web页的后缀名是.html和.htm,但这只是web页最基本的两种文件格式,今天我们来介绍一下web页的其它一些文件格式。

首先介绍一下html与htm关于HTML,HTML(HyperT extMark-upLanguage)即超文本标记语言,是WWW的描述语言。

设计HTML语言的目的是为了能把存放在一台电脑中的文本或图形与另一台电脑中的文本或图形方便地联系在一起,形成有机的整体,人们不用考虑具体信息是在当前电脑上还是在网络的其它电脑上。

我们只需使用鼠标在某一文档中点取一个图标,Internet就会马上转到与此图标相关的内容上去,而这些信息可能存放在网络的另一台电脑中。

HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字、图形、动画、声音、表格、链接等。

HTML的结构包括头部(Head)、主体(Body)两大部分,其中头部描述浏览器所需的信息,而主体则包含所要说明的具体内容。

关于HTM,实际上HTM与HTML没有本质意义的区别,只是为了满足DOS仅能识别8+3的文件名而已,因为一些老的系统(win32)不能识别四位文件名,所以某些网页服务器要求index.html最后一个l不能省略。

MSIE能自动识别和打开这些文件,但编写网页地址的时候必须是完全对应的,也就是说index.htm和index.html是两个不同的文件,对应着不同的地址。

值得一提的是UNIX系统中对大小写敏感,不吻合的话就可能报没有文件或者找不到文件。

其次介绍一下shtml和shtm关于shtml,shtml是一种基于SSI技术的文件,也就是Server Side Include--SSI 服务器端包含指令,一些Web Server如果有SSI 功能的话就会对shtml文件特殊招待,服务器会先扫一次shtml文件看没有特殊的SSI指令存在,如果有的话就按Web Server设定规则解释SSI指令,解释完后跟一般html一起调去客户端。

SHTML配置及语法

SHTML配置及语法

SHTML配置及语法一介绍:SSI是Server Side Includes的缩写,是嵌入到HTML页面的一组指令的集合。

在返回请求的页面(包含SSI指令)前,服务器会处理这些指令,并用处理的结果替换指令,然后把页面返回。

这样就允许在HTML页面中添加动态产生的内容。

二主要用途目前,主要有以下几种用用途:1、显示服务器端环境变量<#echo>2、将文本内容直接插入到文档中<#include>3、显示WEB文档相关信息<#flastmod #fsize> (如文件制作日期/大小等)4、直接执行服务器上的各种程序<#exec>(如CGI或其他可执行程序)5、设置SSI信息显示格式<#config>(如文件制作日期/大小显示方式) 高级SSI可设置变量使用if条件语句三配置Tomcat(以下为tomcat5版本配置,tomcat6只需配置第三步)1在tomcat目录/server/lib/下找到servlets-ssi.renametojar文件,将这个文件重命名为servlets-ssi.jar2在tomcat目录/conf/下找到web.xml文件,想使用SSI Servlet就删除在SSI servl et和servlet-mapping周围的注释,想使用SSI filter就删除在SSI filter和filter-mapping 周围的注释3在tomcat目录/conf/下找到server.xml文件,在<context>标签上加上属性privileg ed="true"(tomcat6可在context.xml文件中找到<context>标签)五、基本语法1、SSI指令的语法格式如下:<!--#element [attribute=value] [attribute=value] ... -->2、config<!--#config timefmt="" -->config用来指定返回给客户端浏览器的错误信息、日期和文件大小的格式。

SSI学习指南

SSI学习指南

SSI全攻略-网站shtml文件是什么?[日期:2006-04-12] 来源:作者:未知[字体:大中小]SSI(Server Side Include),通常称为服务器端嵌入,是一种类似于ASP的基于服务器的网页制作技术。

大多数(尤其是基于Unix平台)的WEB服务器如Netscape Enterprise Server等均支持SSI命令。

SSI工作原理:在一个通常以.shtml为扩展名的SSI文件中,标准的HTML编码会被直接送到浏览器上,而内嵌Perl 语言形式的SSI命令则先被网络服务器解释执行,如果是标准输出的话,输出信息也将作为标准的HTML 而被送至浏览器。

SSI简单应用实例:〈html〉〈head〉〈title〉my first SSI page〈/title〉〈/head〉〈body〉欢迎您(于〈!--#echo var="date_local" --〉)访问本网站。

〈/html〉标记在上面文档中的“〈!--#--〉”结构表明了SSI命令会被服务器翻译执行,而不是直接送到客户端。

我们可以在浏览器中用“查看→源文件"观察源代码:〈html〉〈head〉〈title〉my first SSI page〈/title〉〈/head〉〈body〉欢迎您(于dec 06 1999)访问本网站。

〈/html〉我们发现,文档中的html被直接传到了客户端,而SSI命令得到了执行。

SSI代码在客户端是不可见的,客户端只能看到它执行的效果。

一个比较实用的例子网站维护常常碰到的一个问题是,网站的结构已经固定,却为了更新一点内容而不得不重做一大批网页。

SSI提供了一种简单、有效的方法来解决这一问题,它将一个网站的基本结构放在几个简单的HTML 文件中(模板),以后我们要做的只是将文本传到服务器,让程序按照模板自动生成网页,从而使管理大型网站变得容易。

如:〈html〉〈head〉〈title〉SSI example〈/title〉〈/head〉〈body〉〈h2〉新闻〈/h2〉〈p〉〈!--#include file="news.txt" --〉〈p〉新闻更新日期:〈!--#flastmod file="news.txt" --〉〈/body〉〈/html〉将频繁的更新内容放在news.txt中,SSI会通过include 指令将其内容包含到输出的网页中。

SSI指令教程

SSI指令教程

SSI指令教程⼀:概述SSI:服务器端嵌⼊或者叫服务器端包含,是Server Side Include的简写。

SSI技术通过在⽂档中加⼊SSI指令,让服务器端在输出⽂档之前解析SSI指令,并把解析完的结果和⽂档⼀同输出给客户端。

SSI的指令格式为:<!-- #directive parameter="value" -->其中,directive是指令名,parameter指令参数,value指令参数值可以看到,就是html注释,事实上,Web服务器开启了SSI,并且页⾯包含可以解析的指令,那么Web服务器就解析这个指令。

没开启器SSI 或者开启了SSI,但是不是可以解析的指令,那么都当做注释。

注意的是,“#”要和directive连在⼀起,中间不能含有空格SSI包含的指令有config:修改 SSI 的默认设置echo:显⽰环境变量exec:执⾏ CGI 脚本flastmod :显⽰指定⽂件的最后修改⽇期fsize:显⽰指定⽂件的⼤⼩include:把其它⽂档插⼊到当前被解析的⽂档中⼆:准备⼯作新建⼀个站点,站点路径为C:\inetpub\wwwroot\ssitutorial,⽹站名称为localhost8585,端⼝为8585在站点⽬录放⼀个html⽂件,名为index.html,⾸先没开启SSI时,测试使⽤SSI指令是否有效果html⽂件内容如下<!DOCTYPE html><html xmlns="/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><title></title></head><body><p>Date = <!--#echo var = "date_local" --></p></body></html>使⽤了echo指令,显⽰当前时间可以看到”Date=“后⾯并没显⽰当前时间,说明没开启SSI,指令只是作为注释下⾯,开启SSI在IIS选中站点localhost8585,选择”处理程序映射“进⼊”处理程序映射“后,选择操作中的”添加模块映射“弹出”添加模块映射“窗⼝,在窗⼝指定解析html⽂件点确定后,可以看到,在”处理程序映射“多了⼀项,同时,在站点⽬录下,也就是C:\inetpub\wwwroot\ssitutorial⽣成了⼀个web.config⽂件”处理程序映射“web.config⽂件web.config的内容如下可以看到,”Date=”后⾯显⽰⽇期,说明SSI指令⽣效了三:SSI各个指令的⽤法3.1 config:修改 SSI 的默认设置,参数:errmsg:⾃定义的SSI执⾏错误信息;timefmt:定义⽇期和时间的格式;sizefmt:决定⽂件⼤⼩是以字节、千字节为单位表⽰errmsg参数:⾃定义的SSI执⾏错误信息,必须放在其它指令前,才能显⽰⾃定义的错误信息例如:<!DOCTYPE html><html xmlns="/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><title></title></head><body><!-- #config errmsg="这是⾃定义错误信息"--><p>File Size = <!--#fsize file="filename.txt"--> bytes</p></body></html>这⾥的filename.txt并不存在,所以执⾏会出错,那么就显⽰⾃定义错误信息了,如下图timefmt参数:定义⽇期和时间的格式<!-- #config timefmt="%y年%m⽉%d⽇"--><p>Date = <!--#echo var = "date_local" --></p>sizefmt:决定⽂件⼤⼩是以字节(bytes)、千字节(abbrev)为单位表⽰⽐如,有⼀个⽂件a.exe,⼤⼩为48,594,944字节,使⽤不同单位<!--#config sizefmt="bytes"--><p><!--#fsize file="a.exe"--> bytes</p><!--#config sizefmt="abbrev"--><p><!--#fsize file="a.exe"--> kb</p>显⽰如下算⼀下,结果是正确的3.2 echo:显⽰环境变量<p>请求⽅式= <!-- #echo var = "HTTP_METHOD" --></p>这⾥显⽰请求⽅式完整的环境变量,可以在查询3.3 exec:执⾏ CGI 脚本⾸先需要得到CGI程序,⽤控制台做⼀个CGI程序,名为CgiDemousing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading;using System.Threading.Tasks;namespace CgiDemo{class Program{static void Main(string[] args){Console.Write("Content-Type: text/html\n\n");Console.Write("<p>Path:" +System.Environment.GetEnvironmentVariable("PATH_TRANSLATED") +"</p>"); } // End of Main().}}输出CGI程序的服务器路径然后,使⽤exec执⾏CGI<pre><!--#exec cgi = "/cgi-bin/cgidemo.exe" --></pre>说明服务器还要做⼀些配置。

浅析Apache服务器中SSI和CGI设定方法

浅析Apache服务器中SSI和CGI设定方法

由于Apache具有相当高的可移植性,它支持超过30种操作系统,包括Unix、Windows 及Darwin等系统,所以目前在网络上已注册的网域里大部份是使用Apache网页服务器。

目前ApacheSoftware Foundation 正致力于发展现在已进入alpha测试阶段的Apache2.0。

在这里,我和大家探讨如何修改服务器选项让服务器能提供简单的动态网页内容,也就是支持CGI程序及 Server-Side Include(SSI)程序。

1、准备工作首先,我假设你已经安装好Apache 而且你的Apache能提供静态网页供浏览。

Apache的安装会自动附上静态的HTML 测试页,也就是说如果能看到那测试页,就代表你的Apache能正常运作了。

基本安装下的Apache仅能提供静态的HTML网页。

然而,你可以通过使用模块(modules)来提升它的功能。

在原始的设定下,Apache的编译会包含mod_include 及 moc_cgi 这两个模块。

你可以在bin子目录下执行./httpd -l 来查看你的Apache是否装有这两个模块。

执行的输出会是一长串Apache现在安装的所有模块。

如果mod_include及moc_cgi 这两个模块不在清单里,你必须重新编译服务器。

重新编译时,确定依照如何含括 mod_include、moc_cgi 模块的说明。

此外你还必需有提供实时网页的Server-Side Includes(相关资料网址:/catalog/apache/excerpt/ch10.html)。

有了server-side includes (SSI)支持,你就能制作出实时的动态网页。

接下来,我先从服务器的SSI支持设定开始,然后进入CGI的编写。

2、Apache的设定首先你必须先找到Apache这个设定文件。

Apache的原始安装目录在 Unix 下是/usr/local/apache,在Windows下则是 c:\Program Files\Apache。

ssi 加载传递参数

ssi 加载传递参数

ssi 加载传递参数SSI(Server Side Includes)是一种在服务器端加载并执行的一种技术,它可以实现传递参数为标题的功能。

通过使用SSI,我们可以在网页中插入动态内容,使网页更加丰富多样。

在本文中,我们将详细介绍SSI加载和传递参数的使用方法及其优势。

我们需要了解如何在网页中使用SSI加载内容。

通过在网页中插入特定的SSI标记,服务器端将会解析这些标记,并将其中的内容加载到网页中。

例如,我们可以使用以下的SSI标记来加载一个文件的内容:<!--#include virtual="/path/to/file" -->上述代码中,"/path/to/file" 是要加载的文件的路径。

通过将该代码插入到网页中,服务器会自动将文件的内容加载到该位置。

在使用SSI加载内容的同时,我们还可以传递参数给被加载的文件。

这样,被加载的文件就可以根据传递的参数来决定要显示的内容。

例如,我们可以使用以下的SSI标记来传递参数:<!--#set var="title" value="这是一个标题" -->上述代码中,"title" 是参数的名称,"这是一个标题" 是参数的值。

通过这种方式,我们可以向被加载的文件传递参数,并在文件中使用该参数来显示不同的标题。

使用SSI加载和传递参数的好处是显而易见的。

首先,它使网页的内容更加动态和个性化。

通过根据不同的参数值加载不同的内容,我们可以实现网页的定制化,给用户带来更好的体验。

其次,SSI 加载和传递参数还可以提高网页的可维护性和可扩展性。

通过将网页的内容和逻辑分离,我们可以更方便地对网页进行修改和更新,而不需要修改每个页面的代码。

除了上述的基本用法,SSI还支持其他一些功能,例如条件判断和循环等。

通过使用这些功能,我们可以更灵活地控制网页的显示内容。

ssi协议

ssi协议

ssi协议SSI(Server Side Includes,服务器端嵌入)协议是一种用于服务器端网页制作的协议。

它允许网页开发者通过嵌入服务器端脚本代码来生成动态网页内容。

SSI协议的主要特点是简单易用。

通过在网页中插入特定的SSI命令,开发者可以很方便地实现网页的动态内容更新。

此外,SSI协议还可以与其他的服务器端脚本语言如PHP、ASP等结合使用,提供更强大的网页功能。

SSI协议的基本语法是在网页中插入特定的SSI命令,命令以“<!--#”开始,以“-->”结束。

常用的SSI命令包括:- include:用于包含其他网页文件的内容。

开发者可以将网页的公共部分放在独立的文件中,通过include命令将其插入到需要的位置,在内容更新时只需修改公共文件即可。

- echo:用于输出变量值或执行命令并输出结果。

开发者可以通过echo命令将服务器端的变量值或执行结果输出到网页中,实现动态内容的生成。

- set:用于定义变量。

开发者可以通过set命令定义和赋值变量,然后在后续的SSI命令中使用这些变量,实现更复杂的动态内容生成。

例如,下面的代码演示了如何使用SSI协议实现一个动态的网页标题和当前时间的显示:```html<!DOCTYPE html><html><head><title><!--#echo var="pageTitle" --></title></head><body><h1>Welcome to my website!</h1><p>Current time: <!--#echo var="currentTime" --></p></body></html>```在服务器端,网页文件中的SSI命令会被解析和执行,然后将动态生成的内容发送给用户的浏览器。

html、shtml、xhtml、dhtml、xml、javascript、js、htmldom、css有什么区别

html、shtml、xhtml、dhtml、xml、javascript、js、htmldom、css有什么区别

HTML、SHTML、XHTML、DHTML、XML、JavaScript、JS、HTML DOM、CSS有什么区别HTML、SHTML、XHTML、DHTML、XML、JavaScript、JS、HTML DOM、CSS有什么区别(2011-04-14 13:35:34)HTML、SHTML、XHTML、DHTML、XML、JavaScript、JS、HTML DOM、CSS有什么区别谁知道HTML,CSS,JS 之间的关系——网友充满人性的解释html是网页的结构,CSS是网页的表达形式,JS是脚本语言;形象一点说就是,html相当于人里面的器官,组成了人体;而CSS就是你穿着的衣服,即使html网页结构相同,但是如果你的CSS变化的话整个网页也是可以变化的,而JS就是发蜡,香水之类的可以使你的网页更加丰富的脚本语言;整个网页就是人体,衣服,香水发蜡结合的结果了。

你下载一个网页源文件,里面不可能只有一个index.html在里面而已,还会有CSS和JS这两样东东,index.html就是网页结构了,而CSS就是让网页横排或者竖排,让每个元素表现出各种样式(比如粗体字,颜色,边距,浮动......),JS就是让最常用的就是让网页显示当前的时间和滚动图片这两个了。

应该说JS是整容医生的手术刀和激光枪、裁缝的剪刀标准的Web组成应该包含三部分:结构、表现、行为这三部分对应的技术如下结构标准语言:主要包括xhtml和xml表现标准语言:CSS行为标准语言:W3c DOM和JavaScript结构层是最底层的,表现层和行为层都必须依附于结构层之上,同时这三者高度追求分离化,也就是说表现层和行为层都可以重写你想想他们各干啥事就清楚了用xhtml书写结构用CSS控制样式用JS控制事件,比如一些表单验证、页面修饰和特效等============================================ ======================================== HTML是一种基本的WEB网页设计语言,XHTML是一个基于XML的置标语言,看起来与HTML有些相象,只有一些小的但重要的区别,XHTML就是一个扮演着类似HTML的角色的XML,所以,本质上说,XHTML是一个过渡技术,结合了XML(有几分)的强大功能及HTML(大多数)的简单特性。

shtml语法

shtml语法

SHTML(Server Side Includes HTML)是一种将服务器端的信息和客户端的信息结合在一起的HTML语言。

SHTML文件与HTML文件非常相似,但是SHTML文件可以包含服务器端的代码和指令,这使得SHTML文件可以动态地生成内容。

SHTML文件的文件扩展名为.shtml或者.shtm。

在SHTML文件中,可以使用以下的指令:<!--#include file="filename" -->:用于包含其他文件的内容,其中filename是要包含的文件名。

<!--#echo var="variable" -->:用于输出服务器端的环境变量或者自定义变量的值,其中variable是要输出的变量名。

<!--#if expr="expression" -->...<!--#endif -->:用于根据表达式的值来决定是否输出一段代码,其中expression是要判断的表达式。

<!--#set var="variable" value="value" -->:用于设置自定义变量的值,其中variable是要设置的变量名,value是变量的值。

<!--#exec cmd="command" -->:用于执行服务器端的命令,其中command是要执行的命令。

<!--#config timefmt="format" -->:用于设置时间格式,其中format是时间的格式。

以上是SHTML语言的一些常用指令,可以帮助开发者在SHTML文件中动态地生成内容。

如何将一个HTML页面嵌套在另一个页面中

如何将一个HTML页面嵌套在另一个页面中

这个在做网页中常要用到,有些通用的内容可集中放在一个页面文件中,其它要用到这些内容的页面只需要包含(引用)这个通用文件即可。

这样便于维护,如果有很多网页,当通用内容需要修改时,只改一个文件就可以了,不需要每个文件单独修改。

最典型的应用比如页脚的版权信息等内容可以放在一个叫做footer.html文件里,然后其他页面文件在页面内容的最后包含这个文件就可以了,具体例子下面有。

要html文件嵌套,最简单的办法是使用SSI(Server Side Include)技术,也就是在服务器端两个文件就被合并了。

除了少数免费网页寄存服务外,几乎所有的网页寄存服务器都支持SSI。

这也是一个比较推荐的方法,它与ASP和网页使用的语法一模一样。

如果网站管理员偏向使用PHP或JSP的话,语法会稍有不同。

对于不能使用SSI、ASP、、PHP和JSP等服务器端动态页面语言的情况,这里还将介绍两种客户端镶嵌的办法:JavaScript和iframe的方法。

当这两种客户端的方法都有很大的弊病,一般不推荐使用。

下面对各种方法单独具体介绍。

1、SSI (Server Side Include)SSI是一种简单的动态网页制作技术,但是有些服务器要求网页文件扩展名为.shtml才能识别文件中SSI命令。

所以如果你的SSI命令看起来不工作,先别放弃,试着把文件扩展名改为.shtml,也许会成功。

如果知道自己的服务器是否支持SSI,请看另一篇文章。

使用SSI一个局限性是页面一定要放在网页服务器上才能看到效果,在本地是不好调试的。

当然,如果非要在本地调试,就本地装一个Apache服务器好了。

比如你想在每个网页的底部加上同样的版权信息,像© 2009 程序员实验室版权所有可以把这行信息放到一个叫做footer.html的文件里,footer.html的内容为:<center> &copy; 程序员实验室版权所有</center>; 这样同一路径下的其他页面文件要包含footer.html的SSI 命令是:<!- #include virtual="footer.html" ->(常用)或者<!- #include file="footer.html" ->这两者的几乎是一样的,不同之处在于include virtual后面取的是一个URL形式的路径,甚至还可以执行一个CGI 程序并包含其输出结果,如果你的服务器支持CGI的话。

SSI框架详细配置

SSI框架详细配置

SSI框架详细配置SSI(Server Side Includes)是一种服务器端技术,允许将不同的网页元素合并到同一个网页中。

这种技术可以提高网页的可维护性和扩展性,通过配置可以根据需要插入动态内容、文本片段或其他指令。

在接口模式下,SSI框架可以通过以下详细配置实现:1.配置服务器支持SSI:2.设置默认文件扩展名:3.定义SSI指令:- include:插入其他文件的内容;- config:设置指令的默认配置;- echo:输出指令的参数值;- set:设置变量的值;- if:根据条件来执行指令;- else:在if指令中使用,表示条件不满足时执行;- endif:表示if指令的结束。

4. 配置include指令:include指令用于插入其他文件的内容。

可以配置以下参数:- file:指定要插入的文件路径;- virtual:指定要插入的虚拟路径;- errmsg:指定在无法找到文件时的错误信息;- flastmod:显示被插入文件的最后修改时间;- fsize:显示被插入文件的大小;5. 配置config指令:config指令用于设置指令的默认配置。

可以配置以下参数:- errmsg:定义在执行指令时出错时显示的错误信息;- sizefmt:定义显示文件大小的格式;- echomsg:设置echo指令输出结果时是否显示指令名称。

6. 配置echo指令:echo指令用于输出指令的参数值。

可以配置以下参数:- var:指定要输出的变量名。

7. 配置set指令:set指令用于设置变量的值。

可以配置以下参数:- var:指定要设置的变量名;- value:指定变量的值。

8. 配置if指令:if指令用于根据条件来执行指令。

可以配置以下参数:- expr:指定条件表达式,可以包含变量比较、逻辑运算等。

以上是SSI框架详细配置的基本内容。

通过合理配置,可以在接口模式下实现网页元素的灵活插入和动态更新,提高网页的可维护性和扩展性。

shtml入门教程(超详细)

shtml入门教程(超详细)

2010最新shtml教程SSI有什么用?之所以要扯到ssi,是因为shtml--server-parsed HTML 的首字母缩略词。

包含有嵌入式服务器方包含命令的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> (如文件制作日期/大小等)4、直接执行服务器上的各种程序<#exec>(如CGI或其他可执行程序)5、设置SSI信息显示格式<#config>(如文件制作日期/大小显示方式) 高级SSI<XSSI>可设置变量使用if条件语句。

使用SSISSI是为WEB服务器提供的一套命令,这些命令只要直接嵌入到HTML文档的注释内容之中即可。

如:<!--#include file="info.htm"-->就是一条SSI指令,其作用是将"info.htm"的内容拷贝到当前的页面中,当访问者来浏览时,会看到其它HTML文档一样显示info.htm其中的内容。

绝对有用,SEO站内优化做法解析

绝对有用,SEO站内优化做法解析

内页优化
G、导航的关键词利用
根据前面的用户浏览注意力的E型和F型图,我们知道导航对于一个网站的意义。 决不仅仅是帮助用户找到内页,也决不仅仅是帮助搜索引擎找到内页。而应该是两者 的结合体,那么在这种情况下,我们就应该对导航采取特殊的关键词部署策略,来体 现这样的重要地位。 1)突出核心关键词或拓展关键词。很多商业站点的导航喜欢采取“新闻中心” 这样的名字,要知道,新闻中心作为一个 词,具有很高的搜索量,但对于一个站点, 只要他不是sina,那么他就应该改成“环保新闻“或者“金融新闻”,至少,包含环 保这样的专业关键词,或者公司名关键词。 2)突出转化率较高的关键词。另外,由于导航条对应的页面应该是栏目列表页, 总体来说其权重是高于内页的,对应该频道的关键词,其权重甚至高于首页,那么我 们在导航条的关键词部署上还应该考虑ROI的问题,适当增加1~3个”如何创业“” 小本创业项目“这样的栏目名称。
内页优化
冗余代码优化 页面HTML代码大小不要超过200K( 去除不必要的空格、空标签块(如<b></b>,<h1></h1> 等)、多余的嵌套标签、不必要的注释、代码生成工具生成 的注释等 尽可能压缩必要的注释内容。如果可能,将注释写到动态 网页中,以动态网页的语法来写,这样就不会发送到客户端 JS/CSS
四、着陆页(登陆页,Landing page)优化
云创科技专注IT教育 http://
选择着陆页面应该是基于搜索者想要看到什么,而不应 该是你想要搜索者看到什么。当然如果2者刚好重合,那就 太完美了。 不要将临时性的网页当作是着陆页面,如“春节促销” 页面。 可以针对多个关键字选择相同的着陆页面,但注意这些 关键字应该是密切相关的。将2个不相关的关键词放在同一 个页面会稀释每一个的密度。 也可以对一个关键字选择多个着陆页面,只是需要让他 们相互链接。

SSI

SSI

—高级软件人才实作培训专家! 高级软件人才实作培训专家!
SSI指令-SSI指令-- #flastmod 和 #fsize 指令
#flastmod 和 #fsize 示范 作用: #flastmod 文件最近更新日期 #fsize 文件的长度 语法: <!--#flastmod file="文件名称"--> <!--#fsize file="文件名称"--> 参数: file 指定包含文件相对于本文档的位置 virtual 指定相对于服务器文档根目录的位置 如 /global/foot.html 表示 注意:文件名称必须带有扩展名。 示例: <!--#flastmod file="foot.html"-->将当前目录下foot.html文件的最近更新日期插入到当前页面 <!--#fsize file="foot.html"-->将当前目录下news.html的文件大小入到当前页面
北京传智播客教育
—高级软件人才实作培训专家! 高级软件人才实作培训专家!
SSI指令 SSI指令
#include 示范 作用:将文本文件的内容直接插入到文档页面中。 语法: <!--#include file="文件名称"--> <!--#include virtual="文件名称"--> file 文件名是一个相对路径,该路径相对于使用 #include 指令的文档所在的目录。被包含文件可以在同 一级目录或其子目录中,但不能在上一级目录中。如表示当前目录下的head.jsp文档,则为<!--#include file="head.jsp" -->。 virtual 文件名是 Web 站点上的虚拟目录的完整路径。如表示相对于服务器文档根目录下global目录下 的foot.html文件;则为<!--#include virtual="/global/foot.html" --> 参数: file 指定包含文件相对于本文档的位置 virtual 指定相对于服务器文档根目录的位置 注意: 文件名称必须带有扩展名。 被包含的文件可以具有任何文件扩展名。 北京传智播客教育

服务器端包含、嵌入技术SSI(ServerSideInclude)详解

服务器端包含、嵌入技术SSI(ServerSideInclude)详解

服务器端包含、嵌⼊技术SSI(ServerSideInclude)详解SSI简介SSI在静态⽂件中⾮常有⽤,能分离⼀些可变的模块,如每⽇排⾏榜等。

其主要作⽤有:1.显⽰服务器端环境变量<#echo>2.将⽂本内容直接插⼊到⽂档中<#include>3.显⽰WEB⽂档相关信息<#flastmod #fsize> (如⽂件制作⽇期/⼤⼩等)4.直接执⾏服务器上的各种程序<#exec>(如CGI或其他可执⾏程序)5.设置SSI信息显⽰格式<#config>(如⽂件制作⽇期/⼤⼩显⽰⽅式)6.⾼级SSI<XSSI>可设置变量使⽤if条件语句。

apache、nginx等都⽀持SSI命令,配置下就可以,Nginx的配置可以参考:SSI 的默认扩展名是 .stm、.shtm 和 .shtmlSSI语法⽰例:<!--#command param="value"-->SSI的语法⾮常简单,但使⽤中需注意以下⼏点:1.<!–与#之间⽆空格2.SSI⼤⼩写敏感3.所有value需写在引号中SSI命令config命令config命令主要⽤于修改SSI的默认设置,诸如时间格式,默认错误信息,⽂件⼤⼩单位。

设置默认错误信息:errmsg<!--#configerrmsg="Error,*******************************"-->定义⽇期和时间格式:timefmt<!--#config timefmt="%A, %B %d, %Y"-->定义⽂件⼤⼩单位<!--#config sizefmt="bytes"-->config命令只对其后使⽤的命令⽣效。

同时,后定义的设置具有更⾼的优先级,会覆盖之前的设置。

我对htm,html,和shtml的理解和区分

我对htm,html,和shtml的理解和区分

我对htm,html,和shtml的理解和区分首先htm、html、shtml都是静态网页的后缀,三者也可以说都是只是扩展名不同,其他一样,都是静态的网页。

Htm和html是完全静态的网页不通过服务器编译解释直接送出给浏览器读取的静态网页,以Htm和html伪静态Request除外。

shtml和shtm是服务器动态产生的静态网页,需要服务器自带SSI处理出来静态网页。

定义:html,htm是一个完全的超文本静态网页——hypertext markup languageshtml是一种用于SSI技术的文件——Server Side Include--SSI。

shtml是什么格式,比html有何好处? shtml,html格式是差不多,shtml主要可以使用include(包含html),经过服务器生成静态页面。

Shtml的页面可以使用include嵌入另外的html页面这样可以使得一个网站里共用相同办法分离出来使用include来嵌入到静态页面里。

静态页面则不能!Shtml使用方法假如一个网站头部和导航、底部各个页面完全相同,则可以分离出这些部分分别放到一个html页面里,然后使用include嵌入到一个shtml页面里。

特别说明html和htm不能使用include,即使使用也无效。

要想服务器能解析shtml网页页面,必须在服务器IIS中开SSI。

windows 2003下解决.shtml的文件不能访问shtml在2003下默认不支持,要支持的话可以做如下修改:1:在主机管理-管理-自定义Mime类型中,添加扩展名.shtml Mime类型为text/html 一般就可以了如果嵌套的语法不行,则需要做第二步修改2:在服务器的配置里添加个映射:c:/windows/system32/inetsrv/ssinc.dll 扩展名.shtml 动作限于GET,POST2003的系统下要记的在IIS管理器里的web服务扩展里把在服务器端的包含文件修改为允许最后最好重启下服务器。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

shtml网页SSI使用详解来源:网页制作学习园地作者网页制作学习园地点击数:82 录入时间:07-12-06 23:59:10shtml使用SSI(Server Side Include)的html文件扩展名,SSI(Server Side Include),通常称为"服务器端嵌入"或者叫"服务器端包含",是一种类似于ASP的基于服务器的网页制作技术。

1、Config命令Config命令主要用于修改SSI的默认设置。

其中:Errmsg:设置默认错误信息。

为了能够正常的返回用户设定的错误信息,在HTML文件中Errmsg参数必须被放置在其它SSI命令的前面,否则客户端只能显示默认的错误信息,而不是由用户设定的自定义信息。

<!--#config errmsg="Error! Please email webmaster@ -->Timefmt:定义日期和时间的使用格式。

Timefmt参数必须在echo命令之前使用。

以下是引用片段:<!--#config timefmt="%A, %B %d, %Y"--><!--#echo var="LAST_MODIFIED" -->显示结果为:Wednesday, April 12, 2007也许用户对上例中所使用的%A %B %d感到很陌生,下面我们就以表格的形式总结一下SSI中较为常用的一些日期和时间格式。

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文件。

3、Echo命令Echo命令可以显示以下各环境变量:DOCUMENT_NAME:显示当前文档的名称。

<!--#echo var="DOCUMENT_NAME" -->显示结果为:index.htmlDOCUMENT_URI:显示当前文档的虚拟路径。

例如:<!--#echo var="DOCUMENT_URI" -->显示结果为:/YourDirectory/YourFilename.html随着网站的不断发展,那些越来越长的URL地址肯定会让人头疼。

如果使用SSI,一切就会迎刃而解。

因为我们可以把网站的域名和SSI命令结合在一起显示完整的URL,即:http://YourDomain<!--#echo var="DOCUMENT_URI" -->QUERY_STRING_UNESCAPED:显示未经转义处理的由客户端发送的查询字串,其中所有的特殊字符前面都有转义符"\"。

例如:<!--#echo var="QUERY_STRING_UNESCAPED" -->DATE_LOCAL:显示服务器设定时区的日期和时间。

用户可以结合config命令的timefmt参数,定制输出信息。

例如:<!--#config timefmt="%A, the %d of %B, in the year %Y" --><!--#echo var="DATE_LOCAL" -->显示结果为:Saturday, the 15 of April, in the year 2007DATE_GMT:功能与DATE_LOCAL一样,只不过返回的是以格林尼治标准时间为基准的日期。

例如:<!--#echo var="DATE_GMT" -->LAST_MODIFIED:显示当前文档的最后更新时间。

同样,这是SSI中非常实用的一个功能,只要在HTML 文档中加入以下这行简单的文字,就可以在页面上动态的显示更新时间。

<!--#echo var="LAST_MODIFIED" -->CGI环境变量除了SSI环境变量之外,echo命令还可以显示以下CGI环境变量:SERVER_SOFTWARE:显示服务器软件的名称和版本。

例如:<!--#echo var="SERVER_SOFTWARE" -->SERVER_NAME:显示服务器的主机名称,DNS别名或IP地址。

例如:<!--#echo var="SERVER_NAME" -->SERVER_PROTOCOL:显示客户端请求所使用的协议名称和版本,如HTTP/1.0。

例如:<!--#echo var="SERVER_PROTOCOL" -->SERVER_PORT:显示服务器的响应端口。

例如:<!--#echo var="SERVER_PORT" -->REQUEST_METHOD:显示客户端的文档请求方法,包括GET, HEAD, 和POST。

例如:<!--#echo var="REQUEST_METHOD" -->REMOTE_HOST:显示发出请求信息的客户端主机名称。

<!--#echo var="REMOTE_HOST" -->REMOTE_ADDR:显示发出请求信息的客户端IP地址。

<!--#echo var="REMOTE_ADDR" -->AUTH_TYPE:显示用户身份的验证方法。

<!--#echo var="AUTH_TYPE" -->REMOTE_USER:显示访问受保护页面的用户所使用的帐号名称。

<!--#echo var="REMOTE_USER" -->4、Fsize:显示指定文件的大小,可以结合config命令的sizefmt参数定制输出格式。

<!--#fsize file="index_working.html" -->5、Flastmod:显示指定文件的最后修改日期,可以结合config 命令的timefmt参数控制输出格式。

<!--#config timefmt="%A, the %d of %B, in the year %Y" --><!--#flastmod file="file.html" -->这里,我们可以利用flastmod参数显示出一个页面上所有链接页面的更新日期。

方法如下:<!--#config timefmt=" %B %d, %Y" --><A HREF="/directory/file.html">File</A><!--#flastmod virtual="/directory/file.html" --><A HREF="/another_directory/another_file.html">Another File</A><!--#flastmod virtual="/another_directory/another_file.html" -->显示结果为:File April 19, 2007Another File January 08, 20076、ExecExec命令可以执行CGI脚本或者shell命令。

使用方法如下:Cmd:使用/bin/sh执行指定的字串。

如果SSI使用了IncludesNOEXEC选项,则该命令将被屏蔽。

Cgi:可以用来执行CGI脚本。

例如,下面这个例子中使用服务端cgi-bin目录下的counter.pl脚本程序在每个页面放置一个计数器:<!--#exec cgi="/cgi-bin/counter.pl" -->s。

相关文档
最新文档