由于重复的网址,我如何进行301重定向

时间:2011-08-15 17:23:32

标签: .htaccess redirect http-status-code-301

我目前正在尝试为我正在处理的网站的所有网页执行301重定向。问题是这个网址:

http://site.com/cash/ 
http://site.com/credit/

http://site.com/cash 
http://site.com/credit 

显示相同的页面

这将导致许多重复的网址问题,并开始拆分我们的SEO的PageRank。

我试图在我的网站上执行此操作,其中所有seo指向非斜杠版本

BTW我有大约90页,我必须改变......有关实现这个目标的好方法的任何想法

如何在htaccess中执行301重定向以在我的所有页面上执行此操作

修改

所以要正确理解。这将执行301重定向

# Remove the trailing slash
RewriteCond %{HTTP_HOST} ^(www.)?example\.com$ [NC]
RewriteRule ^(.+)/$ http://www.example.com/$1 [R=301,L]

但是如何排除folder1

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

我会把它放在同一个htaccess文件中,还是在folder1目录中创建另一个htaccess文件

3 个答案:

答案 0 :(得分:2)

您可以使用rel canonical link

,而不是使用301

答案 1 :(得分:2)

您可以将以下内容添加到.htaccess以删除尾部斜杠

# Remove the trailing slash
RewriteCond %{HTTP_HOST} ^(www.)?example\.com$ [NC]
RewriteRule ^(.+)/$ http://www.example.com/$1 [R=301,L]


更新

然后,您可以选择添加www

RewriteCond %{HTTP_HOST} ^example.com$
RewriteRule (.*) http://www.example.com$1 [R=301]

或将其删除

RewriteCond %{HTTP_HOST} ^www.example.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]

答案 2 :(得分:0)

你可以使用< shudder> mod_rewrite,如果它是用于Apache服务器的......这是非常低效的,但如果你烦恼的话可能是最好的选择是SEO