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

建站经验
中国虚拟主机商排名(域名空间选择衡量)
建网站好麻烦!牌照资质这么多!
网站改版不仅要界面好看还要功能完备
这样的八种网站您不能建设
经验共享:成功网站的建设全过程
写给WEB2.0的站长 不仅仅是泼冷水
站长的朴实 站长的共鸣
网站上传方法汇总
漫谈浏览器发展
90年代比较著名的网站首页
草根站长和80后网民对话
SEO专家:网站SEO并非一定需要静态化
提升网页设计效果的方法和诀窍
网站优化指南:网站的优化规则研究
理论指导:创建人们必定访问的网站
建站指南:游戏类网站的策划与建设
百度:一个让自己可以努力的依托!
新站注意:百度(Baidu)收录新站的研究
中国部分网站排名在Alexa大幅下滑
个人站长:谈论木马事件对SEO的影响

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


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

登陆 还没注册?