网站程序在SEO效果上有很多值得注意的方面.GOOGLE,百度的搜索引擎访影响效果有所区别,考虑SEO效果的技术层面也很多.
针对这一点,从搜索引擎到SEO及网站规范技术做法,都是在发展完善中不断探索的过程.目前还没有什么值得推荐的标准.

网站结构与SEO影响:
网页文件路径几层访问到最终页面比较好?Google 最好为三层,百度不限。
较好的例子:
    以 www.szeca.cn为例。
          www.szeca.cn首页为第一层,百度优化为第二层,百度如何优化为第三层。
    这样的结果便于搜索引擎索引。百度如何优化 这个页面在 百度和 google里面都有收录。
二级域名访问结构:
由于三层的目录,容纳的页面有限,需要多级目录。
这个时候使用前面我们讲过的二级域名方式扩大级数。因为二级域名算独立网站,目录层次从当前
二级域名算起。

外部访问结构:
有的网页在本网站层数很多,但也被Google 收录,这是因为这些网页在被其他网站引用,而Google
从其他页面进入这个页面。可以使用link命令查询该页的反相链接。

目录和文件命名
 目录和文件名称中的关键词
 目录名称和文件名称中可以使用到关键词。如果是关键词组,则需要用分隔符分开。我们常用连字
符“-”和下划线“_ ”进行分隔,URL        中还经常出现空格码“%20”。因此,如果以“中国制造”作
文件名,就可能出现以下三种分隔形式:
made-in-china.htm
made_in_china.htm
made%20in%20china.htm
连在一起之后,关键词就失去了意义。但事实上,至少在目前Google并不认同“_ ”为分隔符。对
Google   来说,  made-in-china和 made%20in%20china都等于  made in china,但made_in_china就
被读成了madeinchina,

因此,目录和文件名称如果有关键词组,要用连字符“-”而不是下划线“_ ”进行分隔。

URL应该越短越好
有人为了单纯增加关键字而额外建多一个带有关键字的子目录,改变目录结构。由于  URL中含有
关键字本身对排名提高帮助并不大,因而这种做法多此一举,也是搜索引擎反感的。
不好的例子:
要做英文关键词computer ,这样的目录  http://www.ibm.com/computer/computer/computer.html是错误的。

好的例子:
http://www.ibm.com/computer/ 该目录在根目录下的第一级,权重相对第二级较大。

GB2312 中文路径
现在搜索引擎对 GB2312的中文URL  能正常收录了。优化无处不在,URL 上的关键词相比标题权
重要少一些,但还是有效,有条件可以增加上。

http://www.google.cn/search?comp ... Avomv.com&meta=
http://www.baidu.com/s?wd=site%3 ... 9%A4%B7%BB&cl=3
http://search.cn.yahoo. com/searc ... =UTF-8&meta=all

动态网页静态化
虽然大多数搜索引擎的蜘蛛程序现在基本都可以解读符号“?”后的字符,但搜索引擎更喜欢静态文
件,所以要对动态网页静态化。
在介绍静态化之前,介绍一些常用的正则表达式:
符号            匹配字符                            示例
\d              任何十进制数字                      等价于[0-9]

\D                任何非数字                               等价于[^0-9]
\s                任何空白字符                             空格、制表符、分页符
\S                任何非空白字符                           等价于“ [^\f\n\r\t\v]” 
\w                任何单词字符                             等价于“[A-Za-z0-9_]”
\W                任何非单词字符                           等价于“[^A-Za-z0-9_]”
\n                回车换行                                 
.                 除 \n  以外的任何字符                    (.)+ 匹配除换行符以外的所有字符串
?                  0个或1个前面的字符                    ab?c? 可以且只能匹配“abc”、“abbc”、“abcc”
                                                           和“abbcc”
*                 零个或多个所有的字符                     ab* 可以匹配“ab”、“abb”、“abbb”

+                 一个或多个所有字符                       ab+ 可以匹配“abb”、“abbb”等,但不匹配“ab”
{n}               n表示数量如果是2,表示2个字符           a{2} 可以匹配“aa“,但不匹配“a”
{n,n}             从几个字符开始到几个字符结束,如         a{3,} 匹配“aaa”、“aaaa”等,但不匹配“a”和“aa”。 
                  果不写,表示至少或者至多
x|y               匹配“x”或“y”                         “ab(c|x)yz”匹配 “abcyz”和“abxyz” 

\? \. \* \+       ? . * +                                  

这里我介绍几种静态化方法:
1.   使用IIS_ReWrite        静态化处理,适合 PHP、ASP、ASP.NET 程序。
      A.  isapi_rewrite.isapi_rewrite分精简(lite)和完全(full)版.精简版不支持对每个虚拟主机站点进行
          重写,只能进行全局处理,精简版下载地址 ISAPI_Rewrite 2.7 For IIS                     。
      B.  打开IIS,选择网站,右键菜单属性,添加过滤器。如图:

      C.  打开文件:开始菜单->程序->Helicon->ISAPI_Rewrite->httpd.ini

     D.  将  RewriteRule /user/(\d+).htm /user.asp\?id=$1 [I,O] 加入内容中。
     E.  在浏览器地址栏输入:/user/1.htm      页面将指向  /user.asp?id=1 。

2.  使用虚拟主机的ASP 网站,需要使用404 错误操作实现静态化。
     A.  下载  404  处理页面。404_Rewrite_GB2312.rar
     B.  解压后将Rewrite.asp、  error.asp   放在网站的根目录。
     C.  设置网站自定义错误信息如图:

     D.  在error.asp  里添加处理命令:
         Call ParaseUrl("/(\d+).htm","/user.asp?User=$1")
     E.  在需要静态化的实例user.asp      页面中添加代码:
         <!-- #include virtual="/rewrite.asp" --> 引用文件
         <%
           response.write "<li>Para=" & session("Para") ‘变量是通过 Session  传递
           ‘原来使用request(“user”)获得参数的命令,需要修改成request_(“user”)调用
           response.write "<li>request_(""User"")=" & request_("User")
           ‘原用request.querystring (“user”)获得参数命令,修改为request__.querystring (“user”)调用
           response.write "<li>request__.querystring(""User"")=" & request__.querystring("User")
         %>
     F.  在地址栏输入/1.htm ,实际调用  /user.asp?user=1

3.  使用 asp.net  开发的网页程序,使用URLRewriter.dll         实现静态化。
    1.  下载 URLRewriter.rar,解压后放在/bin/ 目录下
    2.  将URLRewriter.rar    加入工程引用。

    3.  配置IIS   站点,将扩展名为html      指向处理程序  aspnet_isapi.dll 。
        IIS 站点->属性->主目录->配置->添加

        可执行文件和aspx     处理相同,都是
        c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll
        特别注意,一定不要选择 检查文件是否存在。
    4.  在web.config 中添加配置内容,压缩包里有。
        <configSections>
                <section name="RewriterConfig"
        type="URLRewriter.Config.RewriterConfigSerializerSectionHandler, URLRewriter" />

          </configSections>
           <!-- 实际重定向  -->
           <RewriterConfig>
                         <Rules>
                                    <RewriterRule>
                                              <LookFor>~/(\d*).html</LookFor>
                                              <SendTo>~/user/default.aspx?link=$1</SendTo>
                                    </RewriterRule>
                         </Rules>
               </RewriterConfig>

           <system.web>

                         <!--

                          需要在IIS 里面增加html      引用,改成aspx 的引用

                         -->

                         <httpHandlers>
                                    <add                        verb="*"                        path="*.aspx"
         type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
                                    <add                        verb="*"                        path="*.html"
         type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
                         </httpHandlers>
    5.   在地址栏输入  http://localhost/1.html   指向  http://localhost/user/default.aspx?link=1

4.  基于Apache HTTP Server  静态化
    Apache Web Server     的配置  (conf/httpd.conf )
     1.  在httpd.conf 文件中查找  LoadModule rewrite_module modules/mod_rewrite.so
         通常该行被注释,去掉“#”。如果没有就增加该行。
    2.   加入代码:
         <IfModule mod_rewrite.c>
         RewriteEngine On
         RewriteRule ^/([0-9]+).html$ /user.php?user=$1
         </IfModule>
    3.   如果网站使用通过虚拟主机来定义,请务必加到虚拟主机配置文件.htccess                 中去,否则可能
         无法使用。
    4.   重启Apache,重新载入配置。
    5.   在地址栏输入  http://localhost/1.html   ,实际指向  http://localhost/user.php?user=1

5.  静态化后文件格式
    链接静态化后可以是 html 文件,也可以是目录,通常目录的权重大于文件的权重,可以在搜索
     引擎中获得更好的排名。
    例如:
    优化前:    http://www.szeca.cn/article.asp?id=1
    优化后文件:http://www.szeca.cn/article/html/list3-1.html
                http://www.szeca.cn/article/1
    目录:
    同等条件下http://www.szeca.cn/article/1有更高的优先权。