一个页面有多个网址。搜索引擎给予惩罚请帮助我

时间:2010-06-15 01:31:48

标签: .htaccess

我使用prestashop作为我网站的购物车。我有个问题;该网站曾​​经是动态网址。我启用了友好的网址写作。问题是一个页面有多个URL。您可以从动态网址和静态网址访问同一网页。实际上,单个页面有9个不同的URL。这显然会给seo带来问题,因为搜索引擎会为此惩罚我的网站。

我该怎么做才能解决这个问题?我不懂编程。

这是该网站的htaccess。任何示例代码或帮助都非常感谢。

# URL rewriting module activation
RewriteEngine on

# URL rewriting rules
RewriteRule ^([a-z0-9]+)\-([a-z0-9]+)(\-[_a-zA-Z0-9-]*)/([_a-zA-Z0-9-]*)\.jpg$ /img/p/$1-$2$3.jpg [L,E]
RewriteRule ^([0-9]+)\-([0-9]+)/([_a-zA-Z0-9-]*)\.jpg$ /img/p/$1-$2.jpg [L,E]
RewriteRule ^([0-9]+)(\-[_a-zA-Z0-9-]*)/([_a-zA-Z0-9-]*)\.jpg$ /img/c/$1$2.jpg [L,E]
RewriteRule ^lang-([a-z]{2})/([a-zA-Z0-9-]*)/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$3&isolang=$1$5 [L,E]
RewriteRule ^lang-([a-z]{2})/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$2&isolang=$1$4 [L,E]
RewriteRule ^lang-([a-z]{2})/([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ /category.php?id_category=$2&isolang=$1 [QSA,L,E]
RewriteRule ^([a-zA-Z0-9-]*)/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$2$4 [L,E]
RewriteRule ^([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$1$3 [L,E]
RewriteRule ^([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ /category.php?id_category=$1 [QSA,L,E]
RewriteRule ^content/([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ /cms.php?id_cms=$1 [QSA,L,E]
RewriteRule ^([0-9]+)__([a-zA-Z0-9-]*)(.*)$ /supplier.php?id_supplier=$1$3 [QSA,L,E]
RewriteRule ^([0-9]+)_([a-zA-Z0-9-]*)(.*)$ /manufacturer.php?id_manufacturer=$1$3 [QSA,L,E]
RewriteRule ^lang-([a-z]{2})/(.*)$ /$2?isolang=$1 [QSA,L,E]

# Catch 404 errors
ErrorDocument 404 /404.php
Options +FollowSymLinks 
RewriteEngine on 
RewriteCond %{HTTP_HOST} ^***.com [NC] 
RewriteRule ^(.*)$ http://www.***.com/$1 [L,R=301] 

Options +FollowSymLinks
RewriteEngine on
# index.php to /
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*index\.php\ HTTP/
RewriteRule ^(.*)index\.php$ /$1 [R=301,L]

Header set Cache-Control: "no-store, no-cache, must-revalidate, pre-check=0, post-check=0, max-age=0"

2 个答案:

答案 0 :(得分:1)

一般来说这很简单。基本上有两种方式。首先,您可以使用301重定向到页面的“规范”版本(无论您选择哪种规范版本),而不仅仅是内部重写。这意味着通过旧链接进入的人将被重定向到新链接,依此类推。搜索引擎还将处理301重定向,并仅将“最终”目标计为真实页面。

如果您不想将用户重定向到新页面,另一个选项是在页面顶部添加<link>标记,该标记指向您的网页的“规范”版本想。从搜索引擎的角度来看,规范链接就像301重定向一样(因为它只会查看“重定向”页面),但用户不会被重定向:

<link rel="canonical" href="http://www.example.com/lang-en/whatever/blah" />

答案 1 :(得分:0)

如果您主要关注SEO,请查看Google网站站长博客上的this article。基本上它表示为同一内容提供多个URL是好的,但您必须告诉搜索引擎一个规范的URL。

相关问题