当前位置: 首页 > news >正文

小语种网站建设要点网站做好后交接

小语种网站建设要点,网站做好后交接,广州网站建设制作公司,上海网站建设公司站霸网络生成静态页的好处不用说#xff0c;当今大型网站#xff0c;为缓解服务器端的压力许的的页面都改用了静态的页面#xff0c;并利用AJAX技术动态地更新其中的部分内容#xff0c;如广告等。一个简单的不用模板可以直接生成HTML静态页的方法. 如一个正常的index.asp动态页面当今大型网站为缓解服务器端的压力许的的页面都改用了静态的页面并利用AJAX技术动态地更新其中的部分内容如广告等。一个简单的不用模板可以直接生成HTML静态页的方法. 如一个正常的index.asp动态页面 新建一个文件 makeasp2html.asp form methodpost action textarea nameasp2html styledisplay:none!--#include fileindex.asp--/textarea input typesubmit value生成html页/ /form % If request.Form(asp2html) then filenameindex.html set fso Server.CreateObject(Scripting.FileSystemObject) set fout fso.CreateTextFile(server.mappath(filename)) fout.write request.form(asp2html) fout.close set foutnothing set fsonothing end if % 这样index.html文件就生成了连模板都用不着只要服务器要支持FSO,将正常情况下使用的ASP文件读取到textarea里就可以了。------------------------------------------------------------------------------------------------------细说一下常用的几种生成HTML的方法 生成HTML方法主要步骤只有两个 一、获取要生成的html文件的内容 二、将获取的html文件内容保存为html文件 我在这里主要说明的只是第一步如何获取要生成的html文件的内容 目前常用获取html文件的内容的方法有几下几种 1、 CODE: [Copy to clipboard] str 内容 strstr 内容 数据库读取内容.... .....这种方法与是在脚本内写要生成的html内容不太方便预览生成页面的内容无法可视化布局页面更改html模板时会更加复杂。 用这种方法的人很多但我感觉这种方法是最不方便的。 2、 制作单独的HTML模板页动态的内容用特定的字符作为标记(如有人用$title$标记为网页标题)用ADODB.Stream或者Scripting.FileSystemObject将其模板内容载入然后再用替换方法把原先定好的标记替换为动态内容(如Replace(载入的模板内容,$title$,rs(title ) ) )。 3、 用XMLHTTP或serverXMLHTTP获取动态页所显示的HTML内容 CODE: [Copy to clipboard] 我常用的生成html文件的实例 weburl是要获取的动态页地址 getHTTPPage(weburl)是获取动态页内容的函数 weburlhttp://Request.ServerVariables(SERVER_NAME)/contact.asp?idrs(id)‘指定动态页地址 bodygetHTTPPage(weburl)用函数取到动态页地址的内容此方法最大的好处就是不用费力气专门去写静态的模板页面只是将原来就有的动态页面转换为HTML静态页面但生成速度不是太快。 我常用的生成HTML的方法就是第3种用XMLHTTP获取动态页生成的HTML内容再用ADODB.Stream或者Scripting.FileSystemObject保存成html文件。 第二步是生成文件的方法 ASP里常用的有用ADODB.Stream生成文件和Scripting.FileSystemObject生成文件两种 1、 Scripting.FileSystemObject生成文件方法 CODE: [Copy to clipboard] Set fso CreateObject(Scripting.FileSystemObject) FileServer.MapPath(要生成文件路径和文件名.htm) Set txtfso.OpenTextFile(File,8,True) data1文件内容用WriteLine方法生成文件 txt.WriteLine data1 data2文件内容用Write方法生成文件 txt.Write data2 txt.Close txt.fso2、 ADODB.Stream生成文件方法 CODE: [Copy to clipboard] Dim objAdoStream set objAdoStream Server.createObject(ADODB.Stream) objAdoStream.Type 1 objAdoStream.Open() objAdoStream.Write(文件内容) objAdoStream.SaveToFile 要生成文件路径和文件名.htm,2 [next] objAdoStream.Close()再说一下我对HTML防采集却不防搜索引擎蜘蛛的一些经验 我开发过几个采集程序也研究过很多采集程序代码所以对采集程序的原理还算是稍微有些了解。 先说一下采集原理 采集程序的主要步骤如下 一、获取被采集的页面的内容 二、从获取代码中提取所有用的数据 一、获取被采集的页面的内容 我目前所掌握的ASP常用获取被采集的页面的内容方法 1、用serverXMLHTTP组件获取数据 CODE: [Copy to clipboard] Function GetBody(weburl) 创建对象 Dim ObjXMLHTTP Set ObjXMLHTTPServer.CreateObject(MSXML2.serverXMLHTTP) 请求文件,以异步形式 ObjXMLHTTP.Open GET,weburl,False ObjXMLHTTP.send While ObjXMLHTTP.readyState 4 ObjXMLHTTP.waitForResponse 1000 Wend 得到结果 GetBodyObjXMLHTTP.responseBody 释放对象 Set ObjXMLHTTPNothing End Function 调用方法 GetBody(文件的URLf地址) 2、或XMLHTTP组件获取数据 CODE: [Copy to clipboard] Function GetBody(weburl) 创建对象 Set Retrieval CreateObject(Microsoft.XMLHTTP) With Retrieval .Open Get, weburl, False, , .Send GetBody .ResponseBody End With 释放对象 Set Retrieval Nothing End Function 调用方法 GetBody(文件的URLf地址) 这样获取的数据内容还需要进行编码转换才可以使用 CODE: [Copy to clipboard] Function BytesToBstr(body,Cset) dim objstream set objstream Server.CreateObject(adodb.stream) objstream.Type 1 objstream.Mode 3 objstream.Open objstream.Write body objstream.Position 0 objstream.Type 2 objstream.Charset Cset BytesToBstr objstream.ReadText objstream.Close set objstream nothing End Function 调用方法BytesToBstr(要转换的数据,编码)编码常用为GB2312和UTF-8二、从获取代码中提取所有用的数据 目前我掌握的方法有 1、用ASP内置的MID函数截取需要的数据 CODE: [Copy to clipboard] Function body(wstr,start,over) startNewstring(wstr,start) 设置需要处理的数据的唯一的开始标记 overNewstring(wstr,over) 和start相对应的就是需要处理的数据的唯一的结束标记 bodymid(wstr,start,over-start) 设置显示页面的范围 End Function 调用方法body(被采集的页面的内容,开始标记,结束标记)2、用正则获取需要的数据 CODE: [Copy to clipboard] Function body(wstr,start,over) Set xiaoqi New Regexp设置配置对象 xiaoqi.IgnoreCase True忽略大小写 xiaoqi.Global True设置为全文搜索 xiaoqi.Pattern ”start“.?”over“正则表达式 Set Matches xiaoqi.Execute(wstr)开始执行配置 [next] set xiaoqinothing body For Each Match in Matches bodybodyMatch.Value 循环匹配 Next End Function 调用方法body(被采集的页面的内容,开始标记,结束标记)采集程序祥细思路 1、取得网站的分页列表页的每页地址 目前绝大部分动态网站的分页地址都有规则如: 动态页 第一页index.asp?page1 第二页index.asp?page2 第三页index.asp?page3 ..... 静态页 第一页page_1.htm 第二页page_2.htm 第三页page_3.htm ..... 取得网站的分页列表页的每页地址只需要用变量替代每页地址的变化的字符即可如page_%page%.htm 2、获取被采集网站的分页列表页内容 3、从分页列表代码中提取被采集的内容页面的URL连接地址 绝大部分分页页面里的内容页连接也有固定规则如 连接1 连接2 连接3 用以下代码就可以获得一个URL连接集合 CODE: [Copy to clipboard] Set xiaoqi New Regexp xiaoqi.IgnoreCase True xiaoqi.Global True xiaoqi.Pattern ””“.?”““ Set Matches xiaoqi.Execute(页面列表内容) set xiaoqinothing url For Each Match in Matches urlurlMatch.Value Next4、取得被采集的内容页面内容根据”提取标记“从被采集的内容页面分别截取要取得的数据 因为是动态生成的页面大多数内容页面内都有相同的html标记我们可以根据这些有规则的标记提取需要的各个部分的内容。 如 每个页面都有网页标题用我上面写的MID截取函数就可以获得之间的值也可以用正则表达式来获得。 例body(,) 介绍完采集器的祥细原理后就开始说一下防采集的策略。 目前防采集的方法有很多种先介绍一下常见防采集策略方法和它的弊端及采集对策 一、判断一个IP在一定时间内对本站页面的访问次数如果明显超过了正常人浏览速度就拒绝此IP访问 弊端 1、此方法只适用于动态页面如aspjspphp等...静态页面无法判断某个IP一定时间访问本站页面的次数 2、此方法会严重影响搜索引擎蜘蛛对其收录因为搜索引擎蜘蛛收录时浏览速度都会比较快而且是多线程。此方法也会拒绝搜索引擎蜘蛛收录站内文件 采集对策只能放慢采集速度或者不采 建议做个搜索引擎蜘蛛的IP库只允许搜索引擎蜘蛛快速浏览站内内容。搜索引擎蜘蛛的IP库的收集也不太容易一个搜索引擎蜘蛛也不一定只有一个固定的IP地址。 评论此方法对防采集比较有效但却会影响搜索引擎对其收录。 二、用javascript加密内容页面 弊端此方法适用于静态页面但会严重影响搜索引擎对其收录情况搜索引擎收到到的内容也都是加密后的内容 采集对策建议不采如非要采就把解密码的JS脚本也采下来。 建议目前没有好的改良建议 评论建议指望搜索引擎带流量的站长不要使用此方法。 三、把内容页面里的特定标记替换为”特定标记隐藏版权文字“ 弊端此方法弊端不大仅仅会增加一点点的页面文件大小但容易反采集 采集对策把采集来的含有隐藏版权文字内容的版权文字替掉或替换成自己的版权。 建议目前没有好的改良建议 评论自己感觉实用价值不大就算是加上随机的隐藏文字也等于画蛇添足。 四、只允许用户登陆后才可以浏览 弊端此方法会严重影响搜索引擎蜘蛛对其收录 采集对策目前落伍已经有人发了对策文章 具体对策就看这个吧《ASP小偷程序如何利用XMLHTTP实现表单的提交以及cookies或session的发送》 建议目前没有好的改良建议 评论建议指望搜索引擎带流量的站长不要使用此方法。不过此方法防一般的采集程序还是有点效果的。 五、用javascript、vbscript脚本做分页 弊端影响搜索引擎对其收录 采集对策分析javascript、vbscript脚本找出其分页规则自己做个对应此站的分页集合页即可。 [next] 建议目前没有好的改良建议 评论感觉懂点脚本语言的人都能找出其分页规则 六、只允许通过本站页面连接查看如Request.ServerVariables(HTTP_REFERER) 弊端影响搜索引擎对其收录 采集对策不知道能不能模拟网页来源。。。。目前我没有对应此方法的采集对策 建议目前没有好的改良建议 评论建议指望搜索引擎带流量的站长不要使用此方法。不过此方法防一般的采集程序还是有点效果的。 从以上可以看出目前常用的防采集方法要么会对搜索引擎收录有较大影响要么防采集效果不好起不到防采集的效果。那么还有没有一种有效防采集而又不影响搜索引擎收录的方法呢那就请继续往下看吧精彩的地方马上呈献给大家。 下面就是我的防采集策略防采集而又不防搜索引擎 从前面的我讲的采集原理大家可以看出绝大多数采集程序都是靠分析规则来进行采集的如分析分页文件名规则、分析页面代码规则。 一、分页文件名规则防采集对策 大部分采集器都是靠分析分页文件名规则进行批量、多页采集的。如果别人找不出你的分页文件的文件名规则那么别人就无法对你的网站进行批量多页采集。 实现方法 我认为用MD5加密分页文件名是一个比较好的方法说到这里有人会说你用MD5加密分页文件名别人根据此规则也可以模拟你的加密规则得到你的分页文件名。 我要指出的是我们加密分页文件名时不要只加密文件名变化的部分 如果I代表分页的页码那么我们不要这样加密 page_nameMd5(I,16).htm 最好给要加密的页码上再跟进一个或多个字符如page_nameMd5(I任意一个或几个字母,16).htm 因为MD5是无法反解密的别人看到的会页字母是MD5加密后的结果所以加人也无法知道你在 I 后面跟进的字母是什么除非他用暴力破解MD5不过不太现实。 二、页面代码规则防采集对策 如果说我们的内容页面无代码规则那么别人就无法从你的代码中提取他们所需要的一条条内容。 所以我们要的这一步做到防采集就要使代码无规则。 实现方法 使对方需要提取的标记随机化 1、定制多个网页模板每个网页模板里的重要HTML标记不同呈现页面内容时随机选取网页模板有的页面用CSSDIV布局有的页面用table布局此方法是麻烦了点一个内容页面要多做几个模板页面不过防采集本身就是一件很烦琐的事情多做一个模板能起到防采集的作用对很多人来说都是值得的。 2、如果嫌上面的方法太麻烦把网页里的重要HTML标记随机化也可以。 做的网页模板越多html代码越是随机化对方分析起内容代码时就越麻烦对方针对你的网站专门写采集策略时难度就更大在这个时候绝大部分人都会知难而退因为这此人就是因为懒才会采集别人网站数据嘛~~~再说一下目前大部分人都是拿别人开发的采集程序去采集数据自己开发采集程序去采集数据的人毕竟是少数。 还有些简单的思路提供给大家 1、把对数据采集者重要而对搜索引擎不重要的内容用客户端脚本显示 2、把一页数据分为N个页面显示也是加大采集难度的方法 3、用更深层的连接因为目前大部分采集程序只能采集到网站内容的前3层如果内容所在的连接层更深也可以避免被采集。不过这样可能会给客户造成浏览上的不便。 如 大多网站都是 首页----内容索引分页----内容页 如果改成 首页----内容索引分页----内容页入口----内容页 注内容页入口最好能加上自动转入内容页的代码 CODE: [Copy to clipboard] metaNBSP;HTTP-EQUIVREFRESHNBSP;CONTENT6;URL内容页其实只要做好防采集的第一步(加密分页文件名规则)防采集的效果就已经不错了还是建议两条反采集方法同时使用给采集者增加采集难度使得他们知难页退。关于Adodb.Stream 的使用说明 组件Adodb.Stream 有下列方法 Cancel 方法 使用方法如下 Object.Cancel 说明取消执行挂起的异步 Execute 或 Open 方法的调用。 Close 方法 使用方法如下 Object.Close 关闭对像 CopyTo 方法 使用方法如下 Object.CopyTo(destStream,[CharNumber]) 说明将对像的数据复制destStream指向要复制的对像CharNumber为可选参数指要复制的字节数不选为全部复制。 Flush 方法 使用方法如下 Object.Flush 说明 LoadFromFile 方法 使用方法如下 Object.LoadFromFile(FileName) 说明:将FileName指定的文件装入对像中,参数FileName为指定的用户名。 Open 方法 使用方法如下 Object.Open(Source,[Mode],[Options],[UserName],[Password]) 说明打开对像 参数说明Sourece 对像源可不指定 Mode 指定打开模式可不指定可选参数如下 adModeRead 1 adModeReadWrite 3 adModeRecursive 4194304 adModeShareDenyNone 16 adModeShareDenyRead 4 adModeShareDenyWrite 8 adModeShareExclusive 12 adModeUnknown 0 adModeWrite 2 Options 指定打开的选项可不指定可选参数如下 adOpenStreamAsync 1 adOpenStreamFromRecord 4 adOpenStreamUnspecified-1 UserName 指定用户名可不指定。 Password 指定用户名的密码 Read 方法 使用方法如下 Object.Read(Numbytes) 说明读取指定长度的二进制内容。 参数说明Numbytes指定的要读取的找度不指定则读取全部。 ReadText 方法 使用方法如下 Object.ReadText(NumChars) 说明读取指定长度的文本 参数说明NumChars指定的要读取的找度不指定则读取全部。 SaveToFile 方法 使用方法如下 Object.SaveToFile(FileName,[Options]) 说明将对像的内容写到FileName指定的文件中 参数说明FileName指定的文件 Options 存取的选项可不指定可选参数如下 adSaveCreateNotExist 1 adSaveCreateOverWrite 2 SetEOS 方法 使用方法如下 Object.setEOS() 说明 SkipLine 方法 使用方法如下 Object.SkipLine() 说明 Write 方法 使用方法如下 Object.Write(Buffer) 说明将指定的数据装入对像中。 参数说明Buffer 为指定的要写入的内容。 WriteText 方法 使用方法如下 Object.Write(Data,[Options]) 说明将指定的文本数据装入对像中。 参数说明Data 为指定的要写入的内容。 Options 写入的选项可不指定可选参数如下 adWriteChar 0 adWriteLine 1 有下列属性 Charset EOS 返回对像内数据是否为空。 LineSeparator 指定换行格式可选参数有 adCR 13 adCRLF -1 adLF 10 Mode 指定或返加模式。 Position 指定或返加对像内数据的当前指针。 Size 返回对像内数据的大小。 State 返加对像状态是否打开。 Type 指定或返回的数据类型可选参数为 adTypeBinary 1 adTypeText 2 ASPFSO框架实现ASP批量生成HTML并分页的方法!--#include fileconn.asp--数据连接文件%On Error Resume Next容错处理Dim City定义取得要生成页面的城市CityRequest.Querystring(City)获取生成的城市酒店值从框架传过来的在后面将介绍HtmlStartNameRequest.Querystring(HtmlStartName)获得生成htm文件名前缀Dim sql搜索字符串,这里我就直接打开表不用搜索变量了搜索条件按自己写就可以sqlselect * from Hotel where [City] City Dim oRs数据操作对象Dim PageCounts实现分页生成必须得知呀有多少页Set oRs Server.CreateObject(ADODB.Recordset)oRs.Open Sql,oConn,1,1找开酒店等于City变量的表oRs.pagesize10十个记录为一页PageCountsoRs.pagecount得出要生成多少个页面循环生成使用Dim fs定义fso文件对象Dim folders存放生成静态页的文件夹名称Dim Filestart定义生成htm文件前缀Set fsServer.CreateObject(Scripting.FileSystemObject)Dim ifor i1 to PageCounts开始循环生成页面,也就是分页生成了pageioRs.absolutepagei页码rowcountoRs.pagesize当页记录数foldersserver.mappath(CityHtml)if (fs.FolderExists(folders)) then判断文件夹是否存在elsefs.CreateFolder(folders)不存在则创建CityHtml文件夹end ifif i1 then FilestartHtmlStartName如果为第一页则定义文件名为传值名.例如beijing则为beijing.htmelseFilestartHtmlStartNamei如果第二页则为beijing1例如有两页也就是i等于2则为 beijing2.htm如此类推...(.htm后缀就在后面加上)end ifDim files定义生成文本文件名称变量Dim filez定义文件路径名称变量filesFilestart.txt本文件名称filezfoldersfiles文本文件路径册除文件Dim checkfile检查文本文件是否已经存在,是则删除checkfileserver.mappath(CityHtmlFilestart.htm)检查htm文件是否已经存在,是则删除if (fs.FileExists(checkfile)) then检查htm文件是否已经存在,是则删除Dim df定义文件对象*删除文件使用*Set dffs.GetFile(checkfile)定义要册除的文件df.delete册除文件end if判断结束Dim ts定义写入文件对象set ts fs.createtextfile(filez,true) 开启写入文件内容**我在正文只简单写入酒店名称和静态数字分页显示**ts.write(HtmlHeadTitle生成City城市酒店/Titlevbcrlf)之后就是要生成的正文件内容了跟使用Response.writets.write(META http-equivContent-Type contenttext/html; charsetgb2312vbcrlf)ts.write(meta namekeywords contentcity酒店vbcrlf)ts.write(link href/Style/style.css relstylesheet typetext/css/headbody topmargin0vbcrlf)ts.Write(TABLE WIDTH760 cellspacing0 cellpadding0 aligncentervbcrlf_TRTD width100%vbcrlf)分页输出开始数字分页程序原理在这我就不多说了,不懂的朋友可在网上搜索一下Dim page当前页Dim Page2数字分页变量Dim s数字分页变量 if page1 thents.write ( [首 页] [前一页] )elsets.write ( a hrefHtmlStartName.htm classblue[首 页]/a a hrefHtmlStartNameReplace(page-1,1,).htm classblue前一页/a )end ifpage2(page-(page mod 10))/10if page21 then page20for spage2*10-1 to page2*1010if s0 thenif scint(page) then ts.write ( font color#000000[ s ]/font)elseif s1 thents.write ( a hrefHtmlStartNamereplace(s,1,).htm classblue[ s ]/a)elsets.write ( a hrefHtmlStartNames.htm classblue[ s ]/a)end ifend ifif sors.pagecount thenexit forend ifend ifnextif cint(page)ors.pagecount thents.write ( [后一页] [尾 页])elsets.write ( a hrefHtmlStartNamepage1.htm classblue[后一页]/a a hrefHtmlStartNameors.pagecount.htm classblue[尾 页]/a)end if ts.write(/TD/TR)分页输出结束do while not ors.eof and rowcount0 输出酒店名称 ts.write(TRTD width100%oRs.Fields(Chinese_Name)/TD/TRvbcrlf)oRs.movenext rowcountrowcount-1当页记录数-1 loopts.write(/Table/body/htmlvbcrlf)ts.closeset tsnothing 释放对象Dim EditFile定义改写文件变量Set EditFile fs.GetFile(filez)设置改写文件对象EditFile.name left(EditFile.name,len(EditFile.name)-4).htm 改写文本文件成htmnext循环生成结束(分页生成)set EditFilenothing 释放对象set fsnothing释放对象if err.number0 then 处理生成错误Response.write (City更新时发生未知错误A hrefToHtml.asp?CityCityHtmlNameHtmlStartName 重新更新/A)elseResponse.Write(City酒店更新已完成 Now())end if%超长文章内容进行分页并生成HTML文件以下是程序源代码% dim fname,fso,fout,htmlcode dim htmlbody,htmlbody1,page_n htmlbodyrequest.form(body) page_nlen(htmlbody)-len(replace(htmlbody,$,)) ’生成文件名的函数 function makefilename(fname) fname fname fname replace(fname,-,) fname replace(fname, ,) fname replace(fname,:,) fname replace(fname,PM,) fname replace(fname,AM,) fname replace(fname,上午,) fname replace(fname,下午,) makefilenamefname end function if request.querystring(action)add then for i0 to page_n fnamemakefilename(now()) if i0 then ppage0 else ppagei-1 end if if i0 and page_ni then npagei1 else npagepage_n end if shtmlsplit(htmlbody,$)(i) vbcrlf shtmlshtmlbra hreffname_ppage.html上一页/a a hreffname_npage.html下一页/a Set fso Server.CreateObject(Scripting.FileSystemObject) Set fout fso.CreateTextFile(Server.MapPath(fname_i.html)) fout.WriteLine shtml fout.close next response.writeSCRIPT languageJavaScriptalert(’成功生成page_n1个HTML页’);this.location.href’javascript:history.back();’/SCRIPT end if % html head meta http-equivContent-Type contenttext/html; charsetgb2312 title阿里西西_超长文件分页并生成HTML文件简单示例/title /head body form nameform1 methodpost action?actionadd 文章内容 br textarea namebody cols60 rows8 第一页内容 $ 第二页内容 $ 第三页内容/textarea br input typesubmit nameSubmit value提交 /form /body /htmlSHTML和HTML的区别,如果用一句话来解释就是:SHTML 不是HTML而是一种服务器 API,shtml是服务器动态产成的html. 虽然两者都是超文本格式,但shtml是一种用于SSI技术的文件。 也就是Server Side Include--SSI 服务器端包含指令。 如果Web Server有SSI功能的话(大多数尤其是基于Unix平台的WEB服务器如Netscape Enterprise Server等均支持SSI命令)。 会对shtml文件特殊招待。 先扫一次shtml文件看没有特殊的SSI指令现在。 有就按Web Server设定规则解释SSI指令。 解释完后跟一般html一起掉去客户端。shtml使用SSI(Server Side Include)的html文件扩展名SSIServer Side Include)通常称为服务器端嵌入或者叫服务器端包含是一种类似于ASP的基于服务器的网页制作技术。SSI工作原理  将内容发送到浏览器之前可以使用“服务器端包含 (SSI)”指令将文本、图形或应用程序信息包含到网页中。例如可以使用 SSI 包含时间/日期戳、版权声明或供客户填写并返回的表单。对于在多个文件中重复出现的文本或图形使用包含文件是一种简便的方法。将内容存入一个包含文件中即可而不必将内容输入所有文件。通过一个非常简单的语句即可调用包含文件此语句指示 Web 服务器将内容插入适当网页。而且使用包含文件时对内容的所有更改只需在一个地方就能完成。因为包含 SSI 指令的文件要求特殊处理所以必须为所有 SSI 文件赋予 SSI 文件扩展名。默认扩展名是 .stm、.shtm 和 .shtmlWeb 服务器在处理网页的同时处理 SSI 指令。当 Web 服务器遇到 SSI 指令时直接将包含文件的内容插入 HTML 网页。如果“包含文件”中包含 SSI 指令则同时插入此文件。除了用于包含文件的基本指令之外还可以使用 SSI 指令插入文件的相关信息如文件的大小或者运行应用程序或 shell 命令。网站维护常常碰到的一个问题是网站的结构已经固定却为了更新一点内容而不得不重做一大批网页。SSI提供了一种简单、有效的方法来解决这一问题它将一个网站的基本结构放在几个简单的HTML文件中模板以后我们要做的只是将文本传到服务器让程序按照模板自动生成网页从而使管理大型网站变得容易。所以,利用SHTML格式的页面目的和 ASP 差不多但是因为是 API 所以运转速度更快效率更高,比ASP快比HTML慢但由于可以使用服务器端包含因此使页面更新容易特别是批量更新banner版权等,想象一下吧,你有一段 HTML,要在中间穿插一些特殊的服务端脚本,比如插入其他 HTML 段落,你选择 ASP 来完成这个任务,但是如果任务更繁重需要更多的时间比如 5 s,这个时候你不用 ASP 而用 SHTML,或许处理时间就只用 4 s 了.其实说了这么多,对驼而言,用shtml最直接的就是可以用include~~ 转载于:https://www.cnblogs.com/y0umer/archive/2011/03/08/3839348.html
http://www.huolong8.cn/news/390670/

相关文章:

  • 中山市做网站专业的分工做网站如何
  • 服装网站建设项目规划自己做的网站提示不安全
  • 上海网站制作平台江苏省住房和建设部网站
  • 没有网站 可以做cpa深圳汽车网站建设
  • 网站开发的现实意义怎么做好网络推广销售
  • 电脑系统做的好的网站网站建设平台选用分析
  • 网站编辑做的准备注册进出口贸易公司条件
  • 网站建设设计工具如何做网络营销直播
  • 婚纱摄影网站设计思路学校网站开发分析报告
  • 赤壁专业建站公司找人做淘宝网站多少钱
  • 给公司做网站费用wordpress表单购买
  • 做的网站百度找不到淘宝指数网址
  • 丹徒网站建设包括哪些南山龙岗最新通告
  • 网站运营成功案例seo网站优化推广教程
  • 网站系统有哪些建设网站英文
  • 毕业设计代做网站jsp网站建设大概多少钱
  • 塑胶原料东莞网站建设技术支持正邦设计的logo
  • 网站优化是做什么的深圳个人做网站
  • 天元建设有限公司网站如何做公司网站空间
  • 大濮网最新濮阳消息页面优化的方法有哪些
  • 公共法律服务网站建设总结视频网站开发难点
  • 可以直接打开的网站正能量织梦做手机网站
  • 展览展示设计网站网站开发技术论文
  • 聚享游网站如何做推广国际新闻哪个app好
  • 帮人做网站的推广网站开发的工作好做吗
  • 南昌谁做网站设计wordpress 函数
  • 北京网站设计优刻小程序开发公司案例
  • 网站建设伍金手指下拉9室内设计怎么样
  • 怎样做国外网站制作网页应该用哪个
  • 什么网站可以做翻译兼职汕头市建设信息网