如何变更网域, 而没有流去 SEO 排名


网站排名对网站的流量十分重要, 目标的关键字出现在搜寻页面的第一面, 可以增加很多目标流量。

同一网域下的网页被认为是同一个网站, 如果网域变更了, 所有网页的排名也会有影响。要变更网域有很多原因, 例如有合拼、重新开设新品牌, 或选择一个更适合网站内容的域名等,但如果没有正确的实施变更域名, 网站多年建立的排名权重可能也会失去掉。以下是变更网域的步骤。

1. 先把网站放到新域名, 如果是同一台主机, 最简单的方法是开设一个 Virtual Host 或 Server Block, Document Root 指向跟原来网站同一个目录。如果网站内的连结不是使用相对连结, 而是在 a href 标签指向完整的网址, 这个也需要更改。

完成后先浏览新域名, 检查是否一切正常, 看看有没有死 link, 连到旧域名等错误。

2. 这时先到 Google Search Console, 把新网域加入到 Google Search Console。如果旧网域未有加入, 也要一拼加入。

3. 新域名测试可以上线后, 便可以把旧域名的页面用 301 转址到新域名。这个步骤要留意, 不能单纯地把每一页转到新网域便了事, 需要把每一页转到新网域相应的页面, 例如:

www.old-domain.tld/webpage.htm

转到

www.new-domain.tld/webpage.htm

以上设定不用每个网页手动逐一设定, 可以一次过完成, 以下是 .htacess 及 Nginx 的转址方法, 以下会假设旧网域是 old-domain.tld, 新网域是 new-domain.tld:

.htaccess

如果网站是使用 Apache 并支援 .htaccess, 只要在旧网域的根目录的 .htacess, 加入以下几行:

.htaccess


  • RewriteEngine On
    RewriteCond %{HTTP_HOST} ^old-domain.tld$ [OR]
    RewriteCond %{HTTP_HOST} ^www.old-domain.tld$
    RewriteRule (.*)$ http://www.new-domain.tld/$1 [R=301,L]

Nginx 301 转址

开启 Nginx 的设定档, 不同的 Linux 发行版有不同的默认位置, 或者在网域的个别的设定档, 默认位置分别是:

/etc/nginx/conf/
/etc/nginx/

开启设定档后, 找到网站的 Server Block 段落, 加入 Redirect 301 转址

4. 这时进入 Google Search Console, 选择旧域名, 按左下方的 “设定”, 点选以下连结:

变更网址 在网站移至新位址时通知 Google

在 “选择新网站” 选择新网域, 并按 “验证并更新”

5. 如果网站有 Sitemap, 在 Google Search Console, 选择新网域, 点选 “Sitemap”, 把新网站的 Sitemap 提交。

旧域名需要继续保留, 最少持续 3 至 6 个月(或者更久) 301 转向, 以便 Google 完全把关键字排名权重转移到新网域。

现在可以观察流量的变化, 一般刚开始变更网站, 搜索流量会在几天内大幅下降, 但流量往后会慢慢回升。这个过程不会在两、三个星期内完成, 按网站的页面数量而定, 较大型的网站所需的时间较久。

Tags:

Leave a Reply