.htaccess - .html到非HTML URL重定向,内部链接应该如何?

时间:2014-03-30 03:19:40

标签: .htaccess seo

在我的网站上,我设置了一个重定向网址,从.html到no-html。 这是.htaccess代码的一部分:

rewriterule ^([^\.]+)$ $1.html [NC,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*\.html\ HTTP/
RewriteRule ^(.*)\.html$ /$1 [R=301,L]

它可以正常工作,例如。 " mydomain.com/example-page.html"现在是" mydomain.com/example-page"。

分析我的内部链接看起来像:

1)a href =" mydomain.com/example-page.html"

2)a href =" mydomain.com/example-page"

我担心这里的一般SEO表现,使用后一种方法的任何已知问题?

1 个答案:

答案 0 :(得分:1)

首先,你的规则应该是这样的:

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*\.html\ HTTP/
RewriteRule ^(.*)\.html$ /$1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/$1\.html -f [NC]
RewriteRule ^([^\.]+)$ $1.html [L]

第二条规则确保您不在目录上添加.html

您应将链接保持为:

a href="mydomain.com/example-page"
搜索引擎优化不会受到影响,因为拥有旧.html链接的人将被重定向到具有301(永久重定向)的新人,搜索引擎将更新他们的结果,看到301。