很多人在做网站的时候,都会为自己的某个网站注册多个域名。譬如,我就为我的链接帮手网注册了www.linkhelper.cn和www.adminlj.com 2个域名。可能很多人都习惯将自己的很多域名都一股脑的全部绑定在一个站点上。其实,这样做对网站是很不利的,因为搜索引擎会搞不清楚,哪个域名是你要宣传的一个域名。导致搜索引擎会K掉其中的一个域名,而只保留一个域名,更糟糕的可能是2个域名在搜索引擎中都没有什么收录。所以,我们就需要为搜索引擎引路,去告诉搜索引擎,哪个域名才是你的网站对应的主要域名。由此,我们很有必要对次要的域名做301重定向设置。
在很多情况下,带www和不带www的两个网址,有时候也会被搜索引擎当作2个域名来处理。下面,我以IIS的web服务为前提,来说明一下做301重定向的设置。
我所知道的常用的301重定向设置方法有2种。一个是通过IIS界面直接设置,另外一个是通过代码来实现301重定向设置。以下例子以www.adminlj.com 301重定向到www.linkhelper.cn 进行讲解。
第一种方法,通过IIS界面实现301重定向:
1.我们增加一个站点,绑定的以下主机头:adminlj.com www.adminlj.com linkhelper.cn。注意,这里的adminlj.com和linkhelper.cn是因为不带www和带www有可能被搜索引擎当作不同的网址。对应目录E:\webroot\301web。该目录下只需要2个文件,一个default.htm,一个404.htm。截图如下:
2.IIS中选中刚才我们建立的站点,右键,属性,主目录,选择重定向到,输入网址:http://www.linkhelper.cn,同时注意选中下面的资源的永久重定向。截图如下:
3.到此,我们已经完成了将linkhelper.cn www.adminlj.com这几个域名301重定向到www.linkhelper.cn。但是通常情况,我们可能以前宣传过不带www的域名,导致搜索引擎已经收录了linkhelper.cn下的一些网址,这样为了不浪费这些收录,我们需要将这些从搜索引擎过来的流量转到www.linkhelper.cn。那我们怎么做呢。可以通过404+301来实现。则我们设置下这个站点的404信息。还是IIS界面,右键,属性,自定义错误,找到404,双击,出来一个界面,然后在消息类型中选择URL,在下面的URL输入框中输入/404.html。然后我们再在IIS下重新对404.html做301重定向到http://www.linkhelper.cn。操作步骤同第2步。这样的话,如果用户输入linkhelper.cn/xxx.html之类的,因为找不到,则会到404.html,而通过301,用户最终会进入http://www.linkhelper.cn该界面。
通过以上几步,我们在IIS里面完成了301重定向设置。但是大多数情况下,站长们都是用的虚拟主机,这样的话,就没法通过IIS来设置301重定向了。
则我们可以用第二种方法:通过代码来实现。操作步骤如下。
1.同IIS里面的设置方法第一步,需要增加网站目录,并绑定域名adminlj.com www.adminlj.com linkhelper.cn这三个域名。并增加default.asp,并保证default.asp为第一个默认文档。
2.修改default.asp中的代码。代码为:
Response.Status="301 Moved Permanently"
Response.AddHeader "Location","http://www.linkhelper.cn"
--
这样就用ASP实现了301重定向。