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

建站经验
外文翻译:有效提高网站转换率的设计方法
正确理解和判断PR劫持的方法
中国在线旅游市场呼唤商业模式的创新
网站换程序要考虑的六点SEO问题
自身资源与创业方向
屏幕大小再讨论:排版自适应提升可访问性
宽屏如何设计网页 参看大公司是如何做的
网页的背景设计 精选实例与最佳做法(下)
网页背景设计实例与最佳做法(上)
从诺基亚的404页面 谈如何有效的留住用户
网络创业时如何寻找本地优势资源
小站长浅谈网站自动采集与原创的利弊
从常识角度来理解 关于改善站点十点建议
三年多做网站实践 对百度进行更新的理解
学习豆瓣好榜样 豆瓣网技术架构发展历程
网络创业的定位与切入点
Topify让你通过Email轻松玩转Twitter
从内容深度看盈利性网站建站方向的选择
站长沉思录:如何从零开始做一个web2.0站之定位浅析
PHP网站301定向方法详解

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-26   浏览: 147 ::
收藏到网摘: 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

登陆 还没注册?