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

建站经验
用VPS主机做网站,让你的网站也支持IPV6
趣闻:十个人口稀少地区的国家顶级域名
美国主机商Hostease详细人民币购买指南
建站经验:高级标签和交叉链接的使用
Emotify.com:一个充满情绪的网站
2010年制作什么样的主题网站呢?
中国站长站:第三期备案系统或将3月份上线
提高电子商务B2C网站客户转化率的思考
中国的网站数达到323万个 cn域名注册减少
网站编辑工作不应该被认为是重复工作
网络编辑员要清楚现状好好学习
网站分析的三个指标:PV,UV,Visit
Google宣布:Google Docs和Google Sites不支持IE6
网络广告放在网站内容页面右边还是左边
屏蔽网站被挂马的主要途径的7个技巧
大型网站后台开发语言选择
电子商务网站层级结构的划分依据
把顶级域名从新网转到国外的操作方法
网站策划知识:建设网站的人力成本
网站改版改变布局和网站改版后成本的浪费

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


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

登陆 还没注册?