301重定向是什么意思
301重定向(也叫301转向或301跳转),是当用户或者搜索引擎访问网站的时候,向网站服务器发出请求,服务器返回的http数据流中头信息的状态码显示301(状态码有很多种),301状态码表示本网页永久性转移到另一个地址。
举个最简单的301重定向的例子,访问pinzixing.com会自动跳转到www.pinzixing.com,这个就是最简单的一个301重定向的范例,因为pinzixing.com和www.pinzixing.com其实是两个不一样的域名,一般做seo会将网站不带www的重定向到带www的域名,具体可以参考网站不带www301重定向到带www的设置方法这篇文章。
301代表永久性转移,301重定向是网页更改地址后对搜索引擎友好的最好方法,只要不是暂时搬移的情况,都建议使用301来做转址。
什么情况下使用301重定向
1、网站更换域名时,需要通过301永久重定向将旧域名重定向至新域名做全站301重定向,这样方能不流失流量和权重;
2、当网站内部某个目录的路径改了,或者内容页链接地址改了,可以通过301做永久重定向;
3、如果你想要将你名下的多个域名访问指向一个域名时,通过301永久重定向可以实现;
4、你打算实现网址规范化,网站统一链接,要么是带www为主域名,要么不带www作为主域名;
301重定向的设置方法
1、Linux主机301重定向
对于linux虚拟主机Apache服务器,需要支持.htaccess这个文件,现在基本上主机商都会支持这个功能,然后在.htaccess中添加如下规则:
RewriteCond %{http_host} ^pinzixing.com [NC]
RewriteRule ^(.*)$ https://www.pinzixing.com/$1 [R=301,L]
如果你的网站根目录中已经存在了.htaccess文件的话更好,我们可以修改这个文件,将上面两条规则添加进去。如果你的网站根目录中不存在.htaccess文件,你可以先自己创建个htaccess.txt这样的空文件,然后添加如下规则,命名为.htaccess即可,规则为:
RewriteEngine on
RewriteCond %{http_host} ^pinzixing.com [NC]
RewriteRule ^(.*)$ https://www.pinzixing.com/$1 [R=301,L]
2、windows主机301重定向
如果是Windows虚拟主机,就在根目录下面新建一个文件名为web.config的文件,当然前提必须是主机支持这个功能,如果虚拟主机后台有301重定向的设置功能,就不用上述代码,直接设置即可。
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="301Redirect" stopProcessing="true"> <match url="(.*)" /> <conditions logicalGrouping="MatchAny"> <add input="{HTTP_HOST}" pattern="^pinzixing\.com$" /> </conditions> <action type="Redirect" url="https://www.pinzixing.com/{R:0}" redirectType="Permanent" /> </rule> </rules> </rewrite> </system.webServer> </configuration>
评论