找回密码
 立即注册

网站优化之301重定向的意义

#搜索优化# 2023-8-27 07:53 365人围观 搜索优化

301重定向的定义


301重定向是一种非常重要的“自动转向”技术。网址重定向最为可行的一种办法。当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。


301重定向的环境


以下五种情况是必须要做301重定向的,当然如果这五种情况都没有发生的话可以选择不做,下面详细的介绍一下。


①:网站的旧内容过期并被删除掉


网站的一些内容过期了,所以要被删掉了,如果还想留着可以通过301重定向实现。


②:网站有一些具有链接和流量的无效URL


如果你发现这些无效的URL还有流量权重,可以通过301重定向重新生成页面。


③:网站更换了主机托管公司


如果网站更换了主机托管公司,不影响用户查找网站内容的任何URL的情况下,可以不需要做301重定向。


④:网站更换程序


网站进行较大的改版,网站程序需要更换,此时会影响很多URL,可以通过301重定向来解决。


⑤:网站实施URL规范化


网站默认的URL分:


1、abc.com


2、www.abc.com


3、abc.com/index.html


4、www.abc.com/index.html


为了进行网址规范化和不分散权重,通常只出现一个标准的URL,我们可以通过301重定向来实现。例如:我的网站网址只出现http://www.abc.com/的URL,我可以将其他三个URL通过301重定向到这个URL上,这样以来就不会分散权重了,可能带index.html后缀的URL做301重定向容易出现死循环,为了避免这样的情况也是有解决办法的,下面会详细讲解的。


⑥:网站因为各种原因而改变现有内容的URL


可能企业网站因为各种各样的原因而改变了现有内容的URL,这种情况的发生是站长没法预测到的,如果这种情况发生了而改变了URL,建议通过301重定向来解决,尽力避免死链接的出现。总结上述需要注意:并不是所有的情况都是需要做301重定向的;但是,任何URL的更改都是需要做301重定向的。原因很简单,为了避免出现404错误页面而导致不该发生的情况发生。


如何实施301重定向


①:虚拟主机


Linux虚拟主机设置301跳转方法:


在本地新建一个文本文件,最好用的专业的编辑器软件如EditPlus 将代码粘入


RewriteEngine OnRewriteCond %{HTTP_HOST} !^www.abc.com$ [NC]RewriteRule ^(.*)$ http://www.abc.com/$1 [R=301,L]


说明:上述规则是将站点所以访问域名都重定向到www.abc.com(规则中的域名请修改为自己的域名),如果仅想将绑定在站点上某个域名(如:www.123.com)重定向到www.abc.com,规则如下:


RewriteCond %{HTTP_HOST} ^www.123.com$ [NC]RewriteRule ^(.*)$ http://www.abc.com/$1 [R=301,L]


如果有多种需求,如abc.com跳转到www.abc.com qwe.com跳转到www.qwe.com,规则如下:


RewriteEngine OnRewriteCond %{HTTP_HOST} ^abc.com$ [NC]RewriteRule ^(.*)$ http://www.abc.com/$1 [R=301,L]RewriteCond %{HTTP_HOST} ^qwe.com$ [NC]RewriteRule ^(.*)$ http://www.qwe.com/$1 [R=301,L]


根据自己的需要进行添加修改,然后上传到服务器wwwroot目录,改名为.htaccess即可


win虚拟主机设置301跳转方法:


手动设置的(没有自动生成)


1、进入主机控制面板,进入ISAPI筛选器设置,点击”开启自定义URL静态化支持”按钮。


2、待开启伪静态功能后,进入FTP文件管理,找到\others\discuz\httpd.conf 修改这里面的规则。


3、示例代码:


RewriteCond %{HTTP:Host} ^abc.com$RewriteRule (.*) http://www.abc.com$1 [NC,R=301]


#第一条表示要做跳转的域名,第二条表示要跳转到的域名


#如果有很多域名要做跳转,那么可以将第一条规则改为


RewriteCond %{HTTP:Host} !^www.abc.com$


这样,就表示非www.abc.com的域名访问都会跳转到www.abc.com #多个域名做跳转的第二种方法是,首先复制多个 RewriteCond 项,将域名改好 除了最后一项,其余的 RewriteCond 项最后都要加个参数 [OR]即可。


注意:现在很多虚拟主机都自带301的配置,可以在主机控制面板上生成代码信息,然后按照上面的提示进行301重定向。


②:window独立服务


Win独立服务301设置(win2003、win2008):


1、IIS服务器实现301重定向


打开IIS,右键-属性-网站-IP地址那里点编辑增加一个站点,然后绑定一下主机头,也可以绑定更多的闲置域名。如图所示:


打开IIS,首先新建立一个站点,随便对应一个目录E:\wwwroot\301web。该目录下只需要2个文件,一个 default.html,一个404.htm。在欲重定向的网页或目录上按右键;选中“重定向到URL”;在对话框中输入目标页面的地址;切记,记得选 中“资源的永久重定向”;当然,最后要点击“应用”,完成。如下图所示:


注意:win2003跟win2008都是使用IIS服务器,所以301重定向的步骤方法是一样的。


③:Linux独立服务器


Linux独立服务器301设置(红帽企业版、centos):


我用的是红帽企业版,用的是源码包装的Web环境。然后我进入Linux服务器,找到apache的主配置文件 httpd.conf , 我的apache服务器下有多个虚拟主机,我找到我要做301重定向的虚拟主机,然后添加如何的代码(代码是完整的):


1、进入Linux服务器,然后找到httpd.conf的Apache 主配置文件,下图红色框是我所在的完整位置,蓝色框是内容,也就是命令pwd现实所在位置,ls查询当前位置的内容。


既然找到主配置文件了,我们通过命令vi httpd.conf 编辑一下,在最后添加如下完整的代码。要找到配置的那个虚拟主机然后添加代码, 不要乱添加。


ServerName www.abc.comServerAdmin webmaster@dummy-host.example.comLogLevel warnErrorLog logs/dummy-host.example.com-error_logCustomLog logs/dummy-host.example.com-access_log commonServerName abc.comServerAdmin webmaster@dummy-host.example.comRewriteEngine onRewriteRule ^(.*)$ http://www.abc.com$1 [R=301,L]LogLevel warnErrorLog logs/dummy-host.example.com-error_logCustomLog logs/dummy-host.example.com-access_log common


注意:不同形式安装的apache 其路径是不同的,有源码包、有YUM等安装方式,两种马路是不一样的,建议新手联系空间商并实施301重定向。


④:绑定/本地DNS


如果具有对本地DNS记录进行编辑修改的权限,则只要添加一个记录就可以解决此问题。若无此权限,则可要求网站托管服务商对DNS服务器进行相应设置。


⑤:DNS服务器的设置


若要将blog.abc.com指向www.abc.com,则只需在DNS服务中应增加一个别名记录,可写成:blog IN CNAME www.abc.com。


如需配置大量的虚拟域名,则可写成:* IN CNAME www.abc.com.


这样就可将所有未设置的以abc.com结尾的记录全部重定向到www.abc.com上。


检测工具编辑


301重定向是在搜索引擎优化中一个很常用的操作,可以帮助我们转移域名的权重。但是在做301重定向的时候由于服务器系统、网站程序语言、域名和链接地址的不同,使用的方法也不同。这个时候我们就要使用301重定向检测工具,来检测我们的301重定向是否成功。


HttpWatch检测工具


HttpWatch是强大的网页数据分析工具,集成在Internet Explorer工具栏。包括网页摘要、Cookies管理、缓存管理、消息头发送/接受、字符查询、报告输出、POST 数据和目录管理功能。


在IE工具栏中 查看——浏览器栏——httpwatch 打开,也可以使用快捷键shift+F2打开。


状态为:301状态 从demo1.php 成功301跳转到demo9.php ,验证301重定向设置成功。


Chinaz站长工具


chinaz站长工具是业内有名的站长工具。其功能非常丰富,点击http状态码查询,输入网址,可以查询出网站的http状态码,确保是301而不是302.


SSL证书是HTTP明文协议升级HTTPS加密协议的重要渠道,是网络安全传输的加密到通道。关于更多SSL证书的资讯,请关注GDCA(数安时代)。GDCA致力于网络信息安全,已通过WebTrust 的国际认证,是全球可信任的证书签发机构。GDCA专业技术团队将根据用户具体情况为其提供最优的产品选择建议,并针对不同的应用或服务器要求提供专业对应的HTTPS解决方案。


文章转载:https://www.trustauth.cn/wiki/18753.html