在我的网站上,我设置了一个重定向网址,从.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表现,使用后一种方法的任何已知问题?
答案 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。