域名注册商提供的url转发功能是不利于seo的?

优采云 发布时间: 2021-08-08 11:33

  域名注册商提供的url转发功能是不利于seo的?

  购买域名时,域名本身不收录www,但由于域名必须经过DNS服务器解析后才能使用,在此过程中每个域名都会指向一个web服务器ip地址之前网站方会添加一个“www”子域,以帮助客户以更多方式访问网站。客户通常以“www.++.com”的形式访问网站;如果你还没有对这个www进行分析,那么“www.++.com”是无法访问的。对于不懂技术或分析的客户,这个问题可能会导致他无法访问你的网站,因为他只知道用“with”以“www”的形式访问你的网站,你可能不知道那个“++.com”也可以访问!因此,更多的人后来继续这种做法;我们在购买空间域名时,服务商也会帮您解析手头的“www”。当然,这个解析的服务器地址是yes和no。 “www”是一样的,结果是:可以用两个域名同时访问同一个内容,带“www”和不带“www”。说白了,这个问题的答案就是:让第一次上网的人更快地访问你的网站。

  但是这种情况下,某个域名的流量和PR值会被分散,最好将所有访问都导向某个域名。

  您可以使用服务器技术实现的url转发功能(url-forwarding或url redirect)转发到带有www的域名进行访问。但是我们说使用这种URL转发方式对SEO不利。搜索引擎最友好的重定向方式是使用301重定向(也叫301重定向、301重定向)。

  所以这里有一些问题。为什么godaddy等域名注册商提供的URL转发功能不利于SEO? url转发的原理是什么?如果要使用301重定向,如何设置Linux apache、Windows IIS、php、ASP、ASP.NET、JSP实现301重定向?

  301重定向的作用

  为什么要使用 301 转向?首先,第一个就是我们刚才提到的seo优化。在如何标准化 url 中也提到了这一点。设置301重定向后,原页面会返回301 HTTP状态码给浏览器或搜索引擎,通知搜索引擎下一个页面。如果已经永久重定向到新的网页,蜘蛛不会索引原来的网页,同时会将原来网页的PR权重传递给它重定向到的新网页。如果返回302状态码,就告诉蜘蛛页面跳转只是暂时的,蜘蛛还是会索引原页面,造成重复页面的问题(即谷歌补充资料)。如果跳转到302,会被视为两个重复的页面。

  其次,当您因各种原因想更换域名时,可​​以使用301重定向将旧域名301重定向到新域名,这样旧域名的流量就不会丢失和PR权重也将被转移。另外,当注册多个不同的域名并指向同一个网站时,也可以只设置一个主域名,其他域名设置301为主域名,这样每个域名的权重不会被分散。因此,有必要使用301转向。

  URL转发原理

  url转发有两种方式,隐藏转发和(url转发后浏览器地址栏输入的URL不变)非隐藏转发(也叫显式转发:url转发后地址栏显示的地址为转发的 URL )。有人测试过,无论是否隐藏转发,不同的域名注册商可能返回不同的http headers。部分域名服务商管理后台设置的网址转发功能(URL Forwarding)会导致服务器向搜索引擎返回302状态码,而不是301 http状态码。

  据说这种类型的url转发有的通过在浏览器窗口应用frame iframe实现隐藏转发,有的使用Javascript或者Meta Refresh实现非隐藏url转发。很少使用 301。重定向方法。所以大家尽量少用网址转发功能,而是自己手动设置301重定向。

  如何实现301重定向

  之前我们已经提到了很多设置404页面的方法,比如WordPress。设置301重定向(301 redirection,redirection)的实现方法有很多种。下面根据不同的空间服务器类型和编程语言列出了各种301重定向实现代码。请查看童靴数量参考:

  Linux 主机 Apache 服务器 Mod-Rewrite 模式:通过 .htaccess 文件

  当浏览器或搜索引擎蜘蛛发送页面请求时,Web 服务器会检查一个名为“.htaccess”的文件,该文件通过修改“.htaccess”文件的设置来指示如何处理页面请求。告诉搜索引擎一个页面是302重定向(临时跳转)还是301重定向(永久跳转)。部分Linux主机服务器也支持在管理后台直接设置301重定向。如果后台不能设置的话,实现301重定向的步骤也很简单:新建一个名为.htaccess.txt的文件(注意前面的点号不能省略),编写如下301重定向代码在txt文件中:

  

Options +FollowSymLinks

RewriteEngine on

rewritecond %{http_host} ^nowamagic.net [nc]

rewriterule ^(.*)$ http://www.nowamagic.net/$1 [r=301,nc]

  或

  

RewriteEngine On

RewriteCond %{HTTP_HOST} !^nowamagic.net$ [NC]

RewriteRule ^(.*)$ http://www.nowamagic.net/$1 [L,R=301]

  保存文件,删除文件名末尾的.txt,上传到网站root目录。上面代码的意思是,整个站点上所有寻址带www的域名的网页都会被301重定向到不带www的域名(不仅是主页,还有子目录/网页)。如果其他域名要重定向到这个新域名,在.htaccess文件中添加如下重定向代码:

  

Options +FollowSymLinks

RewriteEngine on

RewriteRule ^(.*)$ http://www.nowamagic.net/$1 [L,R=301]

  Windows主机IIS下301重定向设置

  在IIS管理后台->选择要重定向的文件或文件夹->右键“重定向到URL”->输入需要重定向的目标URL->选择“永久重定向资源”。

  另外,如果你的Windows虚拟主机空间支持ISAPI_Rewrite,你可以在IIS下使用ISAPI_Rewrite不仅可以实现url重写,还可以设置301重定向。以下是三个版本的ISAPI_Rewrite 301重定向到不带www域名的代码对应的带www的域名:

  

# ISAPI_Rewrite 1.3 版本 域名的301重定向

RewriteCond Host: ^www\.farlee\.info$

RewriteRule (.*) http\://farlee\.info$1 [I,R]

# ISAPI_Rewrite 2.x 版本

RewriteCond Host: ^www\.farlee\.info$

RewriteRule (.*) http\://farlee\.info$1 [I,RP]

# ISAPI_Rewrite 3.x 版本

RewriteCond %{HTTP:Host} ^www\.farlee\.info$

RewriteRule (.*) http\://farlee\.info$1 [NC,R=301]

  其他情况,如IIS下不同域名之间的301重定向代码,请看详细介绍:ISAPI Rewrite实现IIS 301重定向。

  PHP 301 重定向代码

  301重定向也可以通过在php文件中添加php头来实现,代码如下:

  ASP 301 重定向代码

  ASP.NET 301 重定向代码

  

private void Page_Load(object sender, System.EventArgs e)

{

Response.Status = "301 Moved Permanently";

Response.AddHeader("Location",http://nowamagic.net);

}

  CGI Perl 下的 301 转码

  

$q = new CGI;

print $q->redirect("http://nowamagic.net");

  JSP下的301转码

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线