ecshop是非常好的网店程序,不过也并非完美,有时候我们需要进行小小的优化使之更加有利于网站收录及SEO。

当然并没有足够的证据表明ecshop默认的的url 样式不容易被收录,收不收录,最重要看是看网页的内容含金量的。搜索引擎最喜欢的是原创的高质量的内容页面,最讨厌的是重复的,类似的页面。
购物分享 http://www.jielala.com/

但是一个好的网站应该是各个细节趋于完美的结合体,这个是毋庸置疑的。

今天我就和大家一起说说ecshop巧用URL重写进行SEO优化
我们只讨论怎么样编制自己独一无二的url规则,不讨论是否需要url重写,以及如何重写的问题(不知道的朋友可以论坛搜索url重写)

首先,我们为什么要对url进行优化
    对于一些长期固定的页面,可以自定义url重写规则使url包含至少一个具有实际含义的关键词,无论是搜索引擎还是用户都乐于看到这样的url
这样的页面。

所以编制自定义的url规则是很必要的。
还有一个大原则,不要使用默认的url重写规则,窃以为大家都是用一模一样的url规则,用着雷同的模板,有着雷同的页面内容,人家怎么收录你呢

下来我们就ecshop来看看我们怎么样分类编制url重写规则以nginx规则格式为例,写法都是类似的。

下面我说说url重写是什么意思?
我们举例说明:
    分类页面有一条规则如下
rewrite "^/category-([0-9]+)-b([0-9]+)(.*)\.html$" /category.php?id=$1&brand=$2 last;

含义很简单,就是说category.php?id=变量1 并且brand=变量2的页面重写成 
                  category-变量1的值-b变量2的值.html   这样的格式。至少看起来比之前的要和蔼可亲的多了。
至于背后的程序怎么完成重写的,与我们无关,我们要做的就是使一个动态地址变成我们希望的形式。

好了,明白这点之后,我们就可以拓展一下,比如把重写规则中的category换成type、cat、fenlei
想换什么换什么,不过别忘了,是换转换成的url中的category而不是后面的来源category.php。
rewrite "^/cat([0-9]+)-b([0-9]+)(.*)\.html$" /category.php?id=$1&brand=$2 last;

接下来,我们继续改造我不想使用-这个符号,ok,我们去掉它
rewrite "^/cat([0-9]+)b([0-9]+)(.*)\.html$" /category.php?id=$1&brand=$2 last;
嗯,继续,我们不想显示b而是使用brand,更加直观。

rewrite "^/cat([0-9]+)brand([0-9]+)(.*)\.html$" /category.php?id=$1&brand=$2 last;
这样我们最后生成的url就是 cat2brand34.html 
通过以上的例子我们就搞明白了如何修改一条url重写规则

上面的例子总结成一句话:把通用的规则中的关键词进行修改,一来避免重复,二来设置更加合理。

下来我们说说需要独立设置规则的页面
哪些页面需要独立设置重写规则呢?
帮助文档和说明性文档,就是文章中的 新手帮助,如何订购啊,
默认的规则出来是类似article-18.html 这样的,不好,我们进行改造。

假设页面:联系我们 id=18,我们可以增加如下规则
rewrite "^/contact_us\.html" /article_cat.php?id=4 last;
生成contact_us.html页面
版权申明页面 id=4
rewrite "^/copyright\.html" /article_cat.php?id=4 last;
或者
rewrite "^/copy_right\.html" /article_cat.php?id=4 last;

以此类推,如果不知道改用什么词,就找个大的购物站照搬过来吧,这些页面使用标准化的词汇是绝对没有坏处的。

具体的规则我就不写了,网上很多,iis  apache nginx 都大同小异。

最后补充一点,如果有可能把该静态化的页面做成纯静态。
纯静态的好处多了,更加有利于收录,更快的速度,更大的服务器负载,减少服务器压力,数据库压力
唯一的坏处是会占用相应的空间。