网站技术层面与SEO影响:1
发布:adminseo | 发布时间: 2009年2月12日网站程序在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有更高的优先权。
- 相关文章:
发表评论
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。





