2011-10-17 46 views
1

我注意到,谷歌索引我的网页与变量在URL和其他页面没有他们。这些其他页面没有变量,并且没有php扩展名就可以很好地索引。

隐藏变量从谷歌使用国防部重写

例如:

mydomain.com/page.php?name=flinstones

我的htaccess重写,为:

mydomain.com/flinstones

但它仍然显示为前谷歌搜索和谷歌分析。

有没有办法迫使它只显示/浏览漂亮的网址?

这是我的代码..第一部分工作,但重定向不。 如何让它工作?

RewriteEngine On 
RewriteRule ^([^/\.]+)/?$ page.php?name=$1 [L] 

RewriteRule ^page.php?name=([^/\.]+)/?$ /$1 [R=301,L] 

感谢,

回答

3

是的,从来没有让谷歌看到了丑陋的链接!在你的php/html代码中,总是只使用它的漂亮形式。那么谷歌代表没有机会:-)

+2

而且您可以考虑创建301个重定向,将已编入索引的错误URL重定向到相应的URL。这样,您可以保留已编入索引的页面的PageRank,同时将其从Google索引中移除。 –

+0

@ Jan-Henk,是的,好消息!只要一个正常的重定向,他就不得不等待更长的时间我猜。 – TMS

+0

是的,当然我只使用网站上我的链接漂亮的网址。这是否像我的规则'RewriteRule ^([^/\。] +)/?$ page.php?name = $ 1 [L]''添加'[R = 301,L]'那么简单? – checkenginelight

0

国防部重写是指: 如果用这种形式出现的页面请求“为XXXXX”
管理它,因为它是“yyyyy的”
,做任何事情通知给请求者。
因此,在你的情况谷歌认为,这两个网址是有效的(和重复),哎!
为您的情况使用301 redirect这意味着:'xxxxx'不是一个有效的请求(或已弃用),请请求者(谷歌或任何人)使用不同的'yyyyy'。那么'xxxxx'很快就会被遗忘。
在另一方面,它是正确的mod rewrite你相反的情况:
mydomain.com/flinstones
rewrited到:
mydomain.com/page.php?name=flinstones
荣誉SEO规则并让PHP管理请求。

4

是的,你可以告诉谷歌什么canonical link是一个页面。

<link rel="canonical" href="http://mydomain.com/flinstones" /> 
+0

这会比301重定向有优势还是使用两者更好? – checkenginelight

+0

这和301重定向会有类似的结果。各有其优点。 Canonical会抓住你并未意识到的网址。 301s将实际重定向用户(以便他们看到漂亮的URL),并且可能对非Google搜索引擎有更好的结果。最终,你可以使用两者。 – ceejayoz

+0

谢谢!我想先让我的301重定向工作。 :) – checkenginelight