magento SEO -- 删除掉magento URL中的session id字符串
来源:互联网 发布:阿里云 mysql 分区 编辑:程序博客网 时间:2024/06/08 18:24
我想大家可能都有碰到这种情况,就是在访问magento网站的时候,有的时候后面会带一个session id字符串,有时候却没有。如:
http://www.xyzabc.com/?SID=54b1888e1c2e3281945bf05210f6d0fa
那么什么时候会再现SID,什么时候没有呢?我们知道访问一个域名通常可以使用下列两种形式:
www.xyzabc.com
xyzabc.com
只要你的DNS设定指向了同一个IP,并且apache做了相应的配置。问题就在于此。当你的magento设置(System> Configuration> Web > Un secure)的base URL是http://www.xyzabc.com时,而你使用http://xyzabc.com访问时,那么打开的页面中有的链接就会带SID字符串,而且是那么分使用相对路径的URL生成的URL中会有。反之也是,如果magento后台中设置的base url是xyzabc.com时,在使用www.xyzabc.com访问时,同样也会带sid字符串。
那带SID的URL会带来什么问题?
第一,可能会导致某些magento页面无法访问,尤其是那些在代码中是通过相对路径来指定生成的URL。比如,本来应该是生成
http://www.xyzabc.com/contacts/
现在却是
http://www.xyzabc.com/?SID=54b1888e1c2e3281945bf05210f6d0facontacts/
显然是会进入404页面的。
第二,对SEO不利。我们总不想搜索引擎收录的页面中使用的URL是带链接的吧!
http://www.xyzabc.com/contacts/?SID=f3b20768c9dc0df4a0889e89cda61cb3
http://www.xyzabc.com/contacts/?SID=3760d086e64b0d6f3821362cb9efa4ef
http://www.xyzabc.com/contacts/?SID=0bf7387b53f8d75bd9038c652b90d107
显然这样会使用不同的URL(对搜索引擎来说)收录同一个页面,这样对PageRank是及其不利的。因为搜索引擎讨厌duplicate content,因为这样对别人查询资料是不利的。这样岂不是冤枉,你明明没有重复的内容!
解决方案:
是通过apache的重写模块(mod_rewrite)将对会造成URL后面带SID的那个域名的所有请求重定向到不会造成带SID URL的那个域名上去。(可以直接将下列的命令添加到.htaccess文件中,当然如果为了好一点的性能,建议直接放到对应虚拟主机的定义中,要使用 directory容器包含)
RewriteEngine on //打开重写引擎,magento的.htaccess中已经是打开的了
如果你后台使用的是没有带www的域名做magento的base url,那么我们需要将所有对带www的域名的请求重定向到这个没带www的短域名上,即magento的base url.
相反,则应用:
简单分析一下上面使用的的mod_rewrite模块的相关指令:
RewriteCond指令用来定义重定向(或重写URL)的条件,
基本语法格式是
RewriteCond TestString CondPattern,其中
%{HTTP_HOST}指代所有请求URL中的主机名,即www.xyzabc.com或xyzabc.com。
^yourdomain/.com$
正规表达式匹配yourdomain.com,前面以!开头表示所有主机名不是yourdomain.com的就改写成yourdomain。同样的!www/.yourdomain/.com条件是指所有主机名不是www.yourdomain.com的就改写成www.yourdomain.com.
(转载请注明来源,http://blog.csdn.net/xinhaozheng)
- magento SEO -- 删除掉magento URL中的session id字符串
- magento session
- magento 去掉网址 url 中的 index.php
- magento 去掉网址url中的index.php
- magento seo 优化
- Magento SEO 优化技巧
- 如何删除magento中的所有的订单
- Magento
- magento
- magento------取得URL参数
- magento Url重写方法
- Magento block url
- Magento获得各种url
- Magento URL rewrite
- Magento url 问题
- magento如何使用session
- Magento session的使用方法
- magento模块 -- 如何修改magento订单模块中的订单ID的起始前缀
- 某进程间共享总结专用类——CIPC class
- 浅论技术人员的发展阶段和自身定位选择 :::IT技术管理系列之五:::
- 装饰器模式
- iPhone开发初探
- C#反射学习
- magento SEO -- 删除掉magento URL中的session id字符串
- 反射概念理解
- JBOSS下Web 服务(Web Service)开发步骤
- PHP使用zlib扩展实现页面GZIP压缩输出
- 今天在做EJB的一个简单的例子时,出现了如下异常:
- 收藏 不显示删除回复显示所有回复显示星级回复显示得分回复 ASP加javascript实现图片轮流显示(图片路径从数据库中读取)
- SSH使用指南
- 对数公式
- C#反射实例讲解