背景:我在sub.domain.com上有一个网络应用程序。我的主要网站是在domain.com上。我的sub.domain.com页面上塞满了我想用来在domain.com上的pagerank中获取的关键字。但是,整个应用程序都是在sub.domain.com上编写的,由于URL的编写方式等原因,在domain.com/subdirectory上托管它会有一些努力。
第一个问题:您是否希望迁移(从sub.domain.com到domain.com/subdirectory)能够显着改善domain.com的页面排名,而不是现在的状态?我已经做了很多研究,如果google将子域名与主域名链接,那么意见分歧。
下一个问题:如果我确实想要进行迁移,那么在实际的代码库中很难做到(比繁琐更乏味)。有没有人对mod_rewrite如何做到这一点有一些建议?我知道必须有一个聪明的方法来做到这一点,但我甚至无法开始勾勒出一个解决方案。也许这意味着它不是一件好事,但我希望能够快速入侵,而不是重写我的所有URL。另外,我希望它很容易逆转,如果我更改我的URL(开发正在进行中,所以它不像推出以前的版本那么简单)就不会出现这种情况。
答案 0 :(得分:2)
Pagerank不是域的属性,它是单个文档的属性。因此,更准确地说,从sub.domain.com
迁移到domain.com/subdirectory
会改善domain.com/subdirectory
的页面排名。如果您只关心domain.com
主页的排名,那么对该主页的影响将主要取决于您的内部链接。例如,如果sub.domain.com
上的所有网页目前都有一个“主页”导航链接,该链接指向sub.domain.com
的主页,当您执行移动时,他们现在将转到domain.com
的主页{1}},这将有助于domain.com
主页的排名。另一方面,如果此“主页”导航链接转到domain.com/subdirectory
,那么这就是他们将要提供的内容。
mod_rewrite不会更改HTML中的出站链接,它会更改入站链接的解释方式。因此,您可以将其放入虚拟主机文件中,或.htaccess
sub.domain.com
:
RewriteEngine on
RedirectRule (.*) http://domain.com/subdirectory/$1 [R=301]
批量重定向sub.domain.com
进入他们需要的任何请求。它无法帮助您在代码库中生成正确的新表单URL。 (理论上,您可以保留所有链接,并依赖301重定向来防止您不得不更改它们,但这实际上是草率和浪费,生成两个HTTP请求而不是一个没有充分理由)。