转静态页的几种可行方案

news/2024/7/19 12:25:45 标签: xhtml, php, 爬虫
< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd>
对于文献发布系统来说SEO显得十分重要,当然现在转静态页也不是唯一优化的方式,但对于低智爬虫来讲静态页的优势很明显。下面来分析一下几种方案。

1.制作模板替换关键字符法很多站,包括本站上一个版本采用的就是这个方法。好处就是复杂性不大,缺点也很明显,实时交互性低,要提交一个评论可能就得让服务器重新生成一次文件,这种适用于纯粹信息发布,对于交互讲究不大的站。

2.利用服务器的组件进行请求地址的重定位用老外的话讲就是IIS URL reWrite。国内这方面的组件似乎很少,有些还是带病毒的。国外五花八门,但基本上好的都是收费的。这个技术主要是对服务器有一定的要求,所以用虚拟主机的朋友就不太管用了。它的好处是利用伪装的地址让搜索引擎认为它是个静态页(比如把asp?变成html/)因而达到"转静态"这个效果,而且还不失它原有的交互性。这个变化的过程*的是正则表达式。

  当然它也是有缺点的,除了前面提到的费用问题外,它对服务器又有了负担,对于程序也需要做一些调整。简单说就是程序得把原有的动态地址换成事先设想好的伪静态地址,用户在请求这个伪静态地址的时候服务器又得根据正则表达式把这个地址转换成实际存在的动态地址。考验就在服务器承受和技术上。

3.使用CLASS来实现地址的即时转换本人现在用的这个CMS就是用了这个方法,可惜对PHP还没好好系统学习过,只能读出它是以根目录文件为出发点,依次将&amp;=,?变成/符号。ASP还没见过实现类似功能的,非常可惜。。。

4.第一个方案+第二个方案最终内容页用模板替换,而索引使用伪静态,这样对服务器压力减少又能保持地址有效的静态化。

个人认为比较好的解决方案是第一个,其它的方案生成都只是伪静态,服务器的负载会比较大。不过方案要做些调整:对于一些通用的页面(比如列表,文章页)可以使用制作模板替换关键字符法,而像首页,频道比较复杂的页面则可以使用动态模板法。针对交互性的页面可以使用shtml页面的包含文件的功能,即每发表一次评论只用生成对应的评论页,或者要求低一点就套一个动态页面好了。
#html/xhtml/xml专栏

转载于:https://www.cnblogs.com/netcorner/archive/2007/04/11/2912391.html


http://www.niftyadmin.cn/n/1710122.html

相关文章

【转】.NET Framework轻松处理XML数据(三)

带验证的阅读器 XmlValidatingReader类实现了XmlReader类&#xff0c;它提供了支持多种类型的XML验证&#xff1a;DTD&#xff0c;XML-Data Reduced(XDR)架构&#xff0c;以及XSD&#xff0c;DTD和XSD都是W3C官方推荐的。而XDR是Microsoft早期用于处理XML构架的一种格式。…

ViewModel 的结构

1、ViewModel&#xff1a; 抽象类&#xff0c;主要有 clear 方法&#xff0c;它是 final 级&#xff0c;不可修改&#xff0c;clear 方法中包含 onClear 钩子&#xff0c;开发者可重写 onClear 方法来自定义数据的清空 2、ViewModelStore&#xff1a; 内部维护一个 HashMap …

中文字段名终于实现啦呵呵呵呵

今天是个值得庆贺的日子 jise实现了在mysql的一张表中定义所有表中英文字段的中文名称&#xff0c;并能非常方便地自动生成web page中的字段中文名。 即&#xff0c;根据mysql的一张表&#xff0c;定义好各字段中文名&#xff0c;然后通过简单鼠标操作&#xff08;击键两次&…

Android监听器实现的四种方式

1、 直接通过id查找后&#xff0c;绑定匿名内部类作为事件监听类。代码如下&#xff1a; Button loginButton (Button) findViewById(R.id.tologin1); btn1.setOnclickListener(new OnclickListener(){ public void onClick(View v){ // 要执行的操作 } }); 优点&#xff…

窗口自动靠边程序演示

HICON hIcon::ExtractIcon(AfxGetInstanceHandle(),_T("NotePad.exe"),0); if (hIcon &&hIcon!(HICON)-1) { pDC->DrawIcon(10,10,hIcon); } DestroyIcon(hIcon); 十一、窗口自动靠边程序演示 BOOL AdjustPos(CRect* lpRect) {//自动靠边 int iSXGetSyste…

ICE专题:JDBC桥接器

曾几何时在linux编c语言的时候就会碰到数据库连接的难题&#xff0c;虽然用ODBC可以解决一些问题&#xff0c;但最新的数据库支持必须用JDBC或专用接口才行&#xff0c;而且如ORACLE这种数据库&#xff0c;要想实现远程连接的话&#xff0c;必须安装客户端&#xff0c;对软件的…

网上开店失败的7大原因

1、定位不明确网站定位是一个网站生存的根本&#xff0c;缺乏定位或者定位不明确的网站&#xff0c;在运营的时候将会迷失方向&#xff0c;在互联网商业的迷雾中乱串&#xff0c;最终以耗尽资源而告终。 2、维护不得力 很多网站在前期策划的时候&#xff0c;收纳了非常丰富的内…

VS2005打包到SP1时出现错误2908的解决方法

查看原文解决方法A.删除VS2005 B.删除.NET FRAMEWORK 2.0 C.删除%windir%\WinSxS\ 下的 Policies 文件夹 D.安装.NET Framework 2.0 E.安装VS2005 & SP1 转载于:https://www.cnblogs.com/apexchu/archive/2007/05/09/740699.html