当前位置: 首页 > 图文教程 > 网站运营 > 建站经验 > SEO搜索引擎优化给程序留下什么?

建站经验
实战经验:教你运作自己的个人BBS网站
创业篇:怎样做好地方门户站长
网站首页百度快照一直不更新的原因分析
创业篇:地方网站的发展之路
网站内容没有诱惑力就不是一个网站
如何把更新网站当成一种享受
网站建设先从本分工作做起 PR从0到3
正确的设计广告位有助于提高收入
《网络江湖三十六计》之搜狐的攻心为上
织梦v5.3的分页采集
向勇于离开搜索引擎的优酷淘宝致敬
边缘元素:武汉婚嫁网的成长历程
"魔高一尺,道高一丈"教你如何安全卖链接
个人做网站成功的十大必备条件
几个流行免费建站系统的草根分析
谁来撕下“免责申明”的遮羞布
如何分析陌生网站的流量
网页字号多大才合适?
创业者容易遇到的四个问题-IT茶馆小聚随想
推荐“网站设计、前端开发”人员阅读的几本书

建站经验 中的 SEO搜索引擎优化给程序留下什么?


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-26   浏览: 167 ::
收藏到网摘: n/a

  SEO搜索引擎优化,我平时经常花去8个小时以上的时间在写代码,在最近的一个项目中,客户明确要求要对SEO初级作掉,对于有站内用户的的问题(.NET的MemberShip我本来就有些抵触,认为只是画蛇添足,对于我,还是会写几行代码的,那些本本功能我还是比较容易写出的).把用户的功能写完了以后,我把Begin_Request处理了一下,输出了一个模板头,定义了一写变量,主要是Meta属性.

  原计划在Global中配置,后来想到了Webs,恐怕不太好,就把这个功能都算在用户信任头除了.说其中的一个例子:
  某个文件:http://www.baidu.com/my/list_1.html这个文件其实是调用了list.aspx?id=1,然后输出标题,关键字等.如果用else,if判断,就太得不偿失了.我就自定义了一个配置模板,格式如下:
  
<?xml version="1.0" encoding="GB2312"?>
<Configs>
<Config style="default">
<BaseUrl>http://s:81/shoeer/</BaseUrl>
<PingRule>
    <Path>index.aspx</Path>
    <FormatType>None</FormatType>
    <Title>Blog--Manage</Title>
    <Description><![CDATA[描述部分]]></Description>
    <Keywords><![CDATA[关键词]]></Keywords>
</PingRule>
</Configs>


  其中的Config/@style主要是加载的模板,后台设置,用xpath定位,//BaseUrl就是传输的主URL,在//PingRule(就是每个文件的匹配项下面):

其中的Path就是当前的路径减去BaseUrl余下的.
FormatType是查询的方式,后台当作Enum格式处理:
  None 是静态类型
  DB   是数据库
  strings  字符串
Query是执行的语句.
Get 是需要Get的字段.
余下的就是需要替换的模板变量了


例如:
    <Path>resumes.aspx</Path>
    <FormatType>strings</FormatType>
    <Query>all=鞋业应聘;student=在校学生;designer=设计师</Query>
    <Get>type</Get>
<Title>{0}-个人简历</Title>


这个根据get的type变量,如果type是all,title就是鞋业应聘-个人简历.

    <Path>citys.aspx</Path>
    <FormatType>DB</FormatType>
    <Query>select top 1 [name] from [s_classplace] where [id]={0}</Query>
    <Get>id</Get>
    <Title>{0}-鞋业招聘信息</Title>

这个,根据id,输出数据库的信息,Query是一条sql语句,其中可以吧sql语句执行结果的每列用-风格,连起来.组成:
 高级人才-鞋业招聘信息

等等.


  以上技术,在PHP,ASP,ASP.NET,JSP等可以广泛使用.

  MS开源的那个Url重写的有bug:

  当系统变得不稳定的时候,cache容易丢失,而BaseModuleRewriter_AuthorizeRequest依赖的匹配正则来自cache,在BaseModuleRewriter_AuthorizeRequest的时候,没有结果null判断,所以会导致空引用.

  在15行可以加上try或者null判断,或者重建cache.

  .net的cache保存在进程里面很容易蒸发.注意些.

评论 (0) All

登陆 还没注册?