一、首先我们要知道为何做301重定向,做301重定向的目的是什么?
1、我们购买的域名一般为(cjzzc.com),cjzzc为我们的自定义域名,.com为顶级后缀域,所以一级域名为cjzzc.com,而搜索引擎也会将网站评分量级(权重)分配给这个一级域名。
2、由于人们习惯性使用www.cjzzc.com这类域名,这是一个二级域名,所以我们需要做301重定向将一级域名(cjzzc.com)重定向到二级域名(www.cjzzc.com),让搜索引擎将网站的评分量级也就是权重分配给这个二级域名,对SEO来说很重要。为不带www的域名做301重定向到带www的域名,避免网站首页权重的分散
3、301是永久性的跳转,网站权重也是永久性的直接分配到新域名上。但有一个302重定向是临时跳转,权重也是临时转移且不是很稳定,一般用来做一个过渡;所以当我们确定最终跳转域名后,我们还需要再设置一个301重定向。
二、301重定向的设置方法
由于服务器系统和网站程序语言的不同每个设置301的方法和代码也不尽相同,下面我们一起来看一下。
1、虚拟主机301重定向设置方法(后台没有301功能)
(1)web服务器apache主机(linux)
方法:进入虚拟主机网站根目录wwwroot or htdocs,将以下代码复制到.htaccess文件中,若目录下没有这个文件,则新建一个.htaccess文件。
代码如下:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^cjzzc.com$ [NC]
RewriteRule ^(.*)$ http://www.cjzzc.com/$1 [R=301,L]
实现效果就是访问cjzzc.com跳转到www.cjzzc.com,多域名跳转时则复制RewriteCond %{HTTP_HOST} ^cjzzc.com$ [NC],多加一行,修改域名即可。
(2)iis6主机(windows)
在主机面板中-isapi筛选器,点击按钮“开启自定义url伪静态支持”。进入ftp文件管理,找到httpd.conf该文件然后编辑。
代码如下:
RewriteCond %{HTTP:Host} ^cjzzc.com$ [NC]
RewriteRule (.*) http://www.cjzzc.com$1 [NC,R=301]
实现效果也是访问cjzzc.com跳转到www.cjzzc.com,多域名跳转复制第一段代码多加一行,在改域名就行。
(3)iis7主机(windows)
进入虚拟主机ftp网站根目录wwwroot or htdocs,找到web.config文件,将以下代码复制进去,没有该文件则新建。
代码如下:
实现效果就是访问cjzzc.com跳转到www.cjzzc.com,多域名跳转则复制,换行添加上并改域名即可。
2、虚拟主机后台自带301重定向功能设置方法
现在很多虚拟主机自带这个301功能,设置起来会比较方便。
举例阿里云虚拟主机:
(1)登录帐号,进入虚拟主机后台。
(2)在左侧基础环境设置中找到301重定向。
(3)在右侧设置源域名cjzzc.com,目标域名www.cjzzc.com,点击添加即可设置成功,多域名跳转的继续添加即可。
如图:
其他虚拟主机方法与之类似,这里就不细讲了。
3、独立win服务器301重定向设置
(1)IIS服务器实现301重定向
第一步:打开服务器iis,右键-属性-网站-ip地址,添加站点,绑定主机头,若域名多可以继续添加。
如图:
第二步:打开IIS,新建立一个站点,随意对应一个目录如D:\\wwwroot\\301web,该目录下只需要2个文件,一个 default.html,一个404.htm。在欲重定向的网页或目录上按右键-选重定向到URL-进入对话框设置。在重定向框内填入完整域名,勾上资源的永久重定向,最后点击应用即可。
如图:
(2)linux服务器301重定向设置
linux的301设置,一般就是修改httpd.conf这个文件,但是由于不同形式的apache,安装后路径不同,所以可以去服务器后台提交问题工单,在空间商的指导下操作301重定向。
4、最后一种就是对本地dns的设置,或对服务器dns的设置
dns设置需要有设置权限,没有的向运营商获取,不过这个一般我们都用不上,所以这里也就不阐述了,就前面的方法也能解决大部分小白的问题了。
小贴士:若是想要将带www的跳转到不带www的域名上,我们只需要将上述方法的域名,前后位置替换一下就可以了。
还有一点一级域名并不是一定要做301重定向,我们可以发现有些站点就没有做的,只是为了引合大众习惯我们常常选择用带www的二级域名做主域,然后再做301重定向保证权重转移。