在网站建好的情况下,我们把这个网址绑定主机头,域名解析到该服务器IP,这时候已经可以访问。有些朋友直接在这个网站上绑定不带www的域名,笔者不建议这样做,这样会给我们的301重定向带来一个麻烦,很可能会使你的重定向陷入死循环、无法打开页面。
首先,我们新建一个网站,绑定的主机头就是不带www的域名,后网站目录下只要随便写一个301.html文件或者xxx.html文件等等,文件内容为空即可。然后我们右键---属性---主目录,选择第三个,重定向到URL,下面填写上你的带www的那个域名。把资源的永久重定向勾选上,确认即可,这样就完成了不带www的域名重定向到带www的域名。这样做并且不会出现死循环等情况。
第二种情况:把www.a.com重定向到www.b.com
这种情况就比较简单,只需在www.a.com上面右键属性---主目录,重定向到url,下面填上www.b.com,再把资源永久重定向勾选上即可。注意,如果你需要把域名后面带的参数都重定向到新的域名,并一一对应,你需要在重定向到的域名后面加上$S$Q,并把上面输入的准确URL勾选上。
顺便解释一下:$S 将请求的URL 的后缀传递给新的URL,而$Q 则将初始URL 中的参数(如 querystring 参数)传递至新的 URL,包括问号(?)。
第三种情况:把www.a.com/index.html重定向到www.b.com
域名后面带上了后缀,这种情况很多人都遇到过,尤其是使用DZ的朋友,经常都会在域名后面自动带上了forum.php等后缀名。虽然说搜索引擎对此没有明确表态说会分散权重,但还是有人实验过这两则之间的细微差别,从另一个方面来说,去掉了后缀,也使域名看起来更加清爽。
其实重定向这种情况和以上两种其实一样简单。
我们只要在IIS上点击我们要做重定向的网站,在右侧选中要做重定向的文件,如index.html,然后右击--属性----文件选中重定向 ,在下面填入具体的网址,然后把永久重定向勾选上即可。
1.打开iis2.在IIs里右键单击原来的首页
3.在“文件”选项卡里,选择“重定向到URL”【这个选项系统默认301处理】
4.输入你要重定向的URL
5.确定
备注:IIS里所有的文件,文件夹都可以类似的方式处理,甚至整站也可以这么处理,系统默认都是作为301永久重定向处理的!
第一种情况,如果你有服务器或者vps,且系统是windows系统的。
在iis下,可以很简单的设置实现全站重定向 。
具体方法是:在VPS里把www.xxxx.com 域名的网站搭建好以后,按照同样的方式搭建一个xxxx.com的网站。然后打开“iis”。在XXXX.com的网站上鼠标右键打开选择属性,选择“主目录”标签,然后按照这个图设置
第二种情况,如果你的系统是Linux的。
做整站301跳转,很简单。如下修改文件httpd.conf或者.htaccess文件保存就可以了:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^xxxx.com [NC]
RewriteRule ^(.*)$ http://www.xxxx.com/$1 [L,R=301]
第三种情况,如果你是虚拟主机用户,如果你有子目录,恭喜你,也可以整站301重定向。具体方法是:
1.新建404.asp,把下面代码放到新建的404文件中保存。
代码
<%@ Language=VBscript %>
<%
Dim PageURL
PageURL=“http://”&Request.ServerVariables("HTTP_HOST")&request.ServerVariables("URL") &"?"&Request.ServerVariables("QUERY_STRING")
PageURL = Replace(PageURL, “http://xxxx.com/404.asp?404"http://xxxx.com:80,"") //修改为你的老域名
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", “http://www.xxxx.com”&PageURL&"" //修改为你的域名
%><%@ language="VBscript">
<%@ language="VBscript">
2.新建index.asp,把下面代码放到新建的ind文件中保存。
代码
<%@ Language=VBscript %>
<%
Response.Status="301 Moved Permanently"
Response.AddHeader "Location","http://www.xxxx.com/"//修改为你的域名。
%><%
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", "http://www.xxxx.com/"//修改为你的域名。
%>
3.用ftp在网站根目录新建文件夹名为301,把上面的index.asp和404.asp上传进去。然后打开虚拟主机控制面板,添加子目录,把域名xxxx.com绑定到301文件夹 ,绑定后设置所属404页面为404.asp:
第四种情况,如果你是虚拟主机用户且你没有子目录,缺银子呗,呵呵,也是可以整站301的,具体方法是:
在网站根目录http.ini文件中,添加如下代码:
[ISAPI_Rewrite]# 3600 = 1 hourCacheClockRate 3600RepeatLimit 32
了http://m.fulinmenst.com/m/products.aspx?TypeId=69&fid=t3:69:3了
RewriteCond Host:^xxxx\.com$
RewriteRule (.*) http\://www\.xxxx\.com$1 [I,RP)
当301重定向实施完之后,旧版本页面跳转到了新版本页面,或网址规范化了再或者其他的,大部分的站长都不会注意到301的HTTP状态是否返回成功。就在此时,可能有些网站的301重定向不传递状态或者出现404错误的状态码,这样容易造成任何情况下做的301重定向无法达到效果。笔者认为,想要正确的、有效果的做301重定向,一些细节还是需要注意的。
例如:404错误(页面未找到)或者200 OK(页面成功加载)301(返回301状态码成功)
正确的HTTP状态码:
错误的HTTP状态码:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)