301重转向代码汇总
301转向
301转向一,什么是301转向301转向(或叫301重定向、301跳转)是用户或蛛蛛向网站服务器发出访问请求时,服务器返回的HTTP数据流中头信息(header)部分状态码的一种。
表示本网直址永久性转移到另一个地址。
其他常见的状态码还包括:200表示一切正常404网页不存生302临时性转向500内部程序错误网址转向还有其他方法,如302转向、JavaScript转向、PHP/ASP/CGI程序转向、MetaRefresh等。
除了301转向外,其他方法都是常用的作弊手法。
虽然方法本身没有对错之分,但被作弊者用多了,搜索引擎对可疑的转向都很敏感。
二,301转向传递权重网页A用301重定向转到网页B,搜索引擎可能肯定网页A永久性改变地址,或者说实际上不存在了,搜索引擎就会把网页B当铸唯一有效目标。
这是搜索引擎唯一推荐的不会产生怀疑的转向方法,更重要的是,网页A积累的页面权重将被传到网页B。
所以,假定是选定的规范化网址,下面几个网址:/index.html/index.html都做301转向到,搜索引擎就知道是规范化网址,而且会把上面列的网址权重传递集中到规范化网址。
目前Google会传递大部分权重,但不是百分之百权重。
百度会传递所有权重。
Google对301的识别、反应、完成权重传递,需要1-3个月时间。
百度对301处理则比较保守,新旧URL会同时存在于数据库很长时间,经常看到做了301转向一年的URL还出在百度结果中。
三,怎样做301转向如果网站使用LAMP(Linux+Apache+Mysql+PHP)主机,可以使用.htaccess文件做301转向。
.htaccess是一个普通文字文件,用Notepad等文字编辑软件创建和编辑,存在网站根目录下。
.htaccess文件中的指令用于目录特定操作,如密码保护、转向、错误处理等。
比如把页面/old.htm 301转向到/new.htm,可以在.htaccess文件中放上这个指令:redirect 301/old.htm 或redirect permanent/old.htm /new.htm把所有不带www()版本的网址301转向到带www的版本(),包括:/about.htm转到/about.htm及/dir/index.htm转到/dir/index.htm等,还要用到mod_rewrite模块,.htaccess文件指令是:Options +FollowSymLinksRewriteEngine onRewriteCond %{HTTP_HOST} ^ [CN]RewriteRule ^(.*) $ /$1 [L,R=301]如果网站用的是Windows主机,可以控制面板做301转向设定。
网站301跳转代码大全
7、Apache 下 301 转向代码 新建.htaccess 文件,输入下列内容(需要开启 mod_rewrite): 1)将不带 WWW 的域名转向到带 WWW 的域名下 Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^ [NC] RewriteRule ^(.*)$ /$1 [L,R=301] <A href="/">手持终端</A> 2)重定向到新域名 Options +FollowSymLinks RewriteEngine on RewriteRule ^(.*)$ /$1 [L,R=301] 3)使用正则进行 301 转向,实现伪静态 Options +FollowSymLinks RewriteEngine on RewriteRule ^news-(.+)\.html$ news.php?id=$1 将 news.php?id=123 这样的地址转向到 news-123.html 8、Apache 下 vhosts.conf 中配置 301 转向 为实现 URL 规范化,SEO 通常将不带 WWW 的域名转向到带 WWW 域名,vhosts.conf 中配 置为: <VirtualHost *:80> ServerName DocumentRoot /home/lesishu </VirtualHost> <VirtualHost *:80> ServerName RedirectMatch permanent ^/(.*) /$1 </VirtualHost> Apache 下除了以上 2 种方法,还有其他配置方法和可选参数 9.Windows 服务器下如何将不带 www 的域名转向带 www 的域名(301 永久转向) IIS 应用程序池里找到站点,右键属性,看图点击-高级设置 (1)删除不带 www 的域名,如果没有则不删,继续 (2)删除不带 www 的域名后在站点处新建站点 (3)站点描述可填写如 301.你的域名-以便识别 (4)选择一个可用 IP,注意域名处必须为不带 www 的域名 (5)继续,站点存放路径可选择和带 www 的一样
apache配置301重定向
seeother
返回一个"参见"状态码(303),表示此资源已经被替代。
gone
返回一个"已废弃"状态码(410),表示此资源已经被永久性地删除了。如果指定了这个状态码,则URL参数将被忽略。
举例:
APACHE http-vhosts.conf配置文件,添加301重定向代码
Redirect 301 /old/old.htm /new.htm #/old/old.htm重定向到new.htm
Redirect permanent /one /two #同上,permanent指令表示返回永久性重定向状态码301
如需配置大量的虚拟域名,则可写成:* IN CNAME .
这样就可将所有未设置的以结尾的记录全部重定向到上。
Redirect [status] URL-path URL
RedirectMatch [status] regex URL
status参数可以使用以下HTTP状态码:
permanent
返回一个永久性重定向状态码(301),表示此资源的位置变动是永久性的。
temp
绑定/本地DNS(域名别名跳转)
如果具有对本地DNS记录进行编辑修改的权限,则只要添加一个记录就可以解决此问题。
若无此权限,则可要求网站托管服务商对DNS服务器进行相应设置。
DNS服务器的设置
若要将指向,则只需在DNS服务中应增加一个别名记录,可写成:aaa IN CNAME 。
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain\.com [NC]
http状态码之301重定向3xx重定向-电脑资料
http状态码之301重定向3xx重定向-电脑资料http状态码之3XX重定向 3xx 重定向这类状态码代表需要客户端采取进一步的操作才能完成请求,。
通常,这些状态码用来重定向,后续的请求地址(重定向目标)在本次响应的 Location 域中指明。
当且仅当后续的请求所使用的方法是 GET 或者 HEAD 时,用户浏览器才可以在没有用户介入的情况下自动提交所需要的后续请求。
客户端应当自动监测无限循环重定向(例如:A->A,或者A->B->C->A),因为这会导致服务器和客户端大量不必要的资源消耗。
按照 HTTP/1.0 版规范的建议,浏览器不应自动访问超过5次的重定向。
300被请求的资源有一系列可供选择的回馈信息,每个都有自己特定的地址和浏览器驱动的商议信息。
用户或浏览器能够自行选择一个首选的地址进行重定向。
除非这是一个HEAD 请求,否则该响应应当包括一个资源特性及地址的列表的实体,以便用户或浏览器从中选择最合适的重定向地址。
这个实体的格式由Content-Type 定义的格式所决定。
浏览器可能根据响应的格式以及浏览器自身能力,自动作出最合适的选择。
当然,RFC 2616规范并没有规定这样的自动选择该如何进行。
如果服务器本身已经有了首选的回馈选择,那么在 Location 中应当指明这个回馈的 URI;浏览器可能会将这个 Location 值作为自动重定向的地址。
此外,除非额外指定,否则这个响应也是可缓存的。
301被请求的资源已永久移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的若干个URI 之一。
如果可能,拥有链接编辑功能的客户端应当自动把请求的地址修改为从服务器反馈回来的地址。
除非额外指定,否则这个响应也是可缓存的。
新的永久性的 URI 应当在响应的 Location 域中返回。
除非这是一个 HEAD 请求,否则响应的实体中应当包含指向新的 URI 的超链接及简短说明。
西部数码301重定向
301转向(或叫301重定向,301跳转)是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。
虚拟主机设置方法:若是我司windows虚拟主机,请按以下流程操作:1.登录管理中心-主机管理-管理-ISAPI筛选器设置-开启自定义的URL静态化支持2.系统提示成功后,点击管理中心-文件管理,找到others\discuz\httpd.conf 文件,点击最右边下载图标将此文件下载到您的计算机3.用记事本打开该文件,在RepeatLimit 32下增加如下两行(假设主机上绑定有三个域名,, ,需要的是将所有的域名都301重定向至,则规则如下:)RewriteCond %{HTTP:Host} !^$RewriteRule (.*) $1 [NC,R=301]说明:将以上规则中的两个替换为您自己的域名即可,两个写一样。
4.将修改好的文件用FTP或者管理中心文件管理的在线上传功能上传到others\discuz\目录替换原文件即可若是我司linux虚拟主机,请按以下流程操作:1.在管理中心-主机管理-管理-文件管理中打开在线文件管理器2.点击文件管理器菜单中的“新建文件”,输入文件名.htaccess3.双击刚才新创建的.htaccess文件,输入以下内容:<IfModule mod_rewrite.c>RewriteEngine OnRewriteCond %{HTTP_HOST} !^$ [NC]RewriteRule ^(.*)$ /$1 [R=301,L]</IfModule>说明:请替换为您新的目标域名,这个规则将会将您的主机绑定的所有域名301重定向到4.点击保存即可立即生效5.通过伪静态限制一个IP或者IP段的规则代码,如果有多条IP限制增加规则条数即可:RewriteCond %{REMOTE_ADDR} ^125.70.243.(.*)$ [NC]RewriteRule (.*) /band.html [NC]独立主机设置方法:如果您是windows系统的,在/rewrite3.rar 下载一个伪静态设置安装包,安装前请先阅读说明文档。
使用Nginx对百度蜘蛛的301重定向跳转处理
使⽤Nginx对百度蜘蛛的301重定向跳转处理先简单说下我碰到的情况。
我⼀个域名的http页⾯被墙,国内⽤户可以通过https⽅式打开。
为了seo,也遵循尽量不换⽹站域名的前提下,现在我想实现的⽬标是对国外蜘蛛(google...)和不在墙内的⽤户访问http页⾯时301重定向跳转到https,⽽百度蜘蛛访问原页⾯时301到⼀个新域名,新域名反向代理原来的⽹页,⽤户通过百度搜索点击打开的是原域名https页⾯。
1、修改原域名nginx配置server {listen 80 default;server_name ;index index.html index.htm index. default.html default.htm default.php;root /home/wwwroot/nbhao;#通过$http_user_agent判断是否是百度蜘蛛if ($http_user_agent ~* Baiduspider){return 301 $request_uri;}#排除对⼀个⽹址的301重定向if ($request_uri !~ ^/.*/.*notify_url\.php.*){return 301 https://$server_name$request_uri;}location ~ .*\.(php|php5)?${try_files $uri =404;fastcgi_pass unix:/tmp/php-cgi.sock;fastcgi_index index.php;include fcgi.conf;}access_log /home/wwwlogs/.log ;}server {listen 443 ;......#https配置详见/1835.html}2、修改新域名配置server{listen 80;#listen [::]:80;server_name ;index index.html index.htm index.php default.html default.htm default.php;root /home/wwwroot//www;#如果⽤户不是百度蜘蛛且访问的⽹址不是baidu.*\.html格式set $flag 0;if ($http_user_agent !~* Baiduspider){set $flag "${flag}1";}#⽤做百度站长平台的验证if ($request_uri !~ ^.*/baidu.*\.html.*){set $flag "${flag}2";}if ($flag = "012") {return 301 https://$request_uri;}#接上不,如果是百度蜘蛛,执⾏_pass反代。
WordPress如何实现301跳转
首先给大家介绍下什么是301跳转:301转向(或叫301重定向,301跳转)是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。
(其目的是为了不让权重和PR值评分至几个域名中,而是集中起来。
)1.域名跳转:一个网站有4个域名,分别:/index.php/index.phpWordPress在安装的时候就要输入域名,同上图,把你www的填入,因为Wordpress 自带了单独域名的301转向。
你可以用站长工具查看下HTTP状态。
2.更换新域名如何实现301跳转:1)在linux并且支持rewrite就可以通过.htaccess来设置了,代码如下:<IfModulemod_rewrite.c>Options +FollowSymLinksRewriteEngine onrewritecond %{http_host} ^[nc]rewriterule ^(.*)$ /$1 [L,R=301]</IfModule>2)如果你的主机不支持.htaccess进行重写,这种方法可能会更好些。
直接打开WordPress根目录下的 wp-blog-header.php 文件中填入以下内容:$the_host = $_SERVER['HTTP_HOST'];//取得当前域名if(strtolower($the_host) != '')//把这里的域名换上你想要的{ $URIRedirect=$_SERVER['REQUEST_URI']; //获取域名后的参数if(strtolower($URIRedirect)=="/index.php")//判断是参数为/index.php就显示为/{$URIRedirect="/";}header("HTTP/1.1 301 Moved Permanently");//发出301头部header("Location: 你希望的地址格式")跳转到你希望的地址格式exit();}3.介绍一款页面URL跳转的插件:Redirection插件,向下面这样填入你的跳转域名,就能实现完美跳转了。
http301、304状态码
http301、304状态码在利⽤httpwatch进⾏抓包分析时,我们经常会看到200、301、304这⼏个状态码。
具本三者是什么意思呢?200表⽰正常0k,这个是地球⼈都知道的了。
301 Moved Permanently 表⽰客户请求的⽂档在其他地⽅,新的URL在Location头中给出,浏览器应该⾃动地访问新的URL。
304 Not Modified:客户端有缓冲的⽂件并发出了⼀个条件性的请求(⼀般是提供If-Modified-Since头表⽰客户只想⽐指定⽇期更新的⽂档)。
服务器告诉客户,原来缓冲的⽂档还可以继续使⽤。
如果客户端在请求⼀个⽂件的时候,发现⾃⼰缓存的⽂件有 Last Modified ,那么在请求中会包含 If Modified Since ,这个时间就是缓存⽂件的 Last Modified 。
因此,如果请求中包含 If Modified Since,就说明已经有缓存在客户端。
只要判断这个时间和当前请求的⽂件的修改时间就可以确定是返回 304 还是 200 。
对于静态⽂件,例如:CSS、图⽚,服务器会⾃动完成 Last Modified 和 If Modified Since 的⽐较,完成缓存或者更新。
但是对于动态页⾯,就是动态产⽣的页⾯,往往没有包含 Last Modified 信息,这样浏览器、⽹关等都不会做缓存,也就是在每次请求的时候都完成⼀个 200 的请求。
⼀般的⼤的站点的图⽚服务器都有实现HTTP 304 缓存功能。
这个 304 状态⼀般主要在⽤户刷新页⾯(F5键)的时候触发,当⽤户在刷新页⾯的时候,因为原来的页⾯⾥的很多图⽚已经缓存过,客户端的浏览器已经记录了图⽚的最后更新时间(Last Mod),所以在⽤户刷新页⾯的时候,会向服务器提交⼀个字段:If-Modified-Since: Wed, 08 Sep 2010 21:35:06 GMT这个时候,服务器端的程序先取得这个字段的值,然后与服务器上的图⽚最后修改时间对⽐,如果相同,就直接返回 304 Not Modified ,然后停⽌。
让html、ASP、php等程序里添加代码实现301重定向
让 html、ASP、php 等程序里添加代码实现 301 重定向1.if this.location = <script (document.domain "" + language=javascript> =="") this.location.pathname +this.location.search; </script>2. 以下代码就是我们需要添加的代码 if request.ServerVariables("HTTP_HOST")="" then Response.Status="301 Moved Permanently" Response.AddHeader "Location","/" Response.End end if3. 使用 ASP 程序的,我们一般将上面的代码加在 index.asp 里面,或者公共调 用的文件中,比如 conn.asp 等等,本人就是加在 index.asp 中,而且一般 都加在程序最前面的第一个插入语句中,即是第一个“ <% %>”代码中, 如图,图 1 是未加代码前的,图 2 就是加代码后的:将第一步的代码替换掉自己网站的网址后,如图 2,加在<%和 function cutstr(tempstr,tempwid) 之间4.保存后将 index.asp 文件上传到自己网站根目录替换掉原文件即可,接 下 来 就 可 以 进 行 跳 转 测 试 了 , 在 网 址 栏 填 入 就 会 跳 转 到 了。
或者百度“301 重定向”,会出现一个 301 检测工具, 如果测试成功了请给我投票,谢谢,如果还有问题请联系我!以前介绍过 301 重定向 ASP 代码,也就是 ASP 程序可以用代码来实现网址的 301 跳转,如果我们使用的 PHP 程序,那么同样可以用一段代码来实现网址 的 301 重定向。
相关服务器200,301,302,404返回状态码介绍
相关服务器200,301,302,404返回状态码介绍标签:武汉SEO优化成就一生科技核心提示:相关服务器返回代码介绍:200页面客户端请求已成功响应。
301页面永久重定向某个链接。
302页面临时重定向到某个链接。
404页面访问的页面暂时不存在。
相关服务器返回代码介绍:200页面客户端请求已成功响应。
301页面永久重定向某个链接。
302页面临时重定向到某个链接。
404页面访问的页面暂时不存在。
1、当网站进行调整、页面进行修改的时候,便会有网页被删除、改名或移动位置,这时候,虽然相应内容的网页还存在于网站中,但使用原来的地址访问则无法访问,或者由于拼写错误导致一个无效的链接,都将使服务器返回404 状态码。
2、但是,Web 服务器默认的404 错误页面,均十分简陋、呆板且对用户不友好,无法给予用户寻找相应信息的更多线索,用户看到这类页面往往最直接的反应并是关闭浏览器窗口离开,这在很大程度上给网站造成损失。
毕竟,对网站来说,用户永远是最重要的资源,以这种方式损失用户更意味着某种程度的失败。
3、这也是许多网站使用自定义404 错误页面的原因。
通过良好的自定义404 页面,可以包含对网站的相应介绍、用户可能感兴趣的内容链接或者网站内容导航链接、内容搜索功能等,能够有效地帮助访问者找到其欲寻找的内容或相似的内容,提高用户在网站内浏览更多信息的机会。
4、正确定义404 错误页面:1. 对于已经存在的信息由于路径改变而导致访问不了时,应该在IIS 中定义404 错误指向一个动态页面,在页面里面使用301 跳转到新的地址,此时服务器返回301 状态码。
2. 当访问一个错误的链接时,将调用404 页面,但由于在IIS 里面设置的不同将导致返回不同的状态码:1. 404 指向的是一个htm 文件,此时页面返回的404 状态码,这是正确的。
2. 404 指向的是一个URL,例如/error.asp,如果不在页面里面进行设置,仅仅是返回提示的HTML 代码,将导致页面返回200 状态码,此时的危害在于,当很多页面找不到时,都返回和访问正常页面时返回一样的200 状态码,将使搜索引擎认为该链接存在,并以错误页面的内容进行收录,当这样的链接很多时,将导致大量页面重复,使网站排名降低。
SEO301重定向-301永久转向页面(ASPPHPJSP)
SEO301重定向-301永久转向页面(ASPPHPJSP)SEO 301重定向-301永久转向页面(ASP PHP JSP)301重定向是什么?301重定向又叫301转向(或叫301跳转),301永久重定向。
当用户或搜索引擎向网站服务器发出浏览请求时,服务器会返回一个HTTP数据流的头信息header,返回当前请求网页的状态码,除了301 HTTP状态码,还有其他常见的HTTP状态码如,200一切正常OK,404找不到网页NOT FOUND,302暂时性转向Moved Temporarily,等等。
301 则表示请求的网页永久性转移到另一个地址location。
更多HTTP状态码的信息请看这篇文章的后面部分:404错误页面重定向 PHP使用HEADER头发送状态(Status)信息(二)。
301永久重定向 301转向的作用有时候我们拥有不同的多个域名,又想将它们统一指向到一个网站的时候,我们可以使用301重定向,如:,,,,,等等。
我们就可以将这些域名全部指向一个网站。
如用为主域名,其它域名就可以转向到。
301重定向和SEO的关系有时候我们为了实现某些具体的网站功能或效果,要使用到网址转向。
比如网址转向方法有:404页面,301永久转向,302临时转向,JavaScript转向,PHP/ASP/JSP转向,META REFRESH网页META刷新等等。
但是很多时候,这些网址转向方法被一些SEOer当作欺骗搜索引擎的工具,将多个域名统一转向到一个域名,以期提高该域名的权重。
因此现在搜索引擎对这些作弊手法非常敏感。
本身这些网址转向方法本身没有错,但被作弊者滥用,搜索引擎对这些可疑的网址转向就很敏感了,做不好就会被google等搜索引擎惩罚,降低权重。
301重定向是一种对搜索引擎最友好的网址转向方法。
当网页A用301重定向转到网页B时,搜索引擎可以肯定网页A永久的改变位置,就不会将网页A 加入索引,而将网页B当作有效网页进行索引。
301重定向请求流程
301重定向请求流程在网站开发过程中,经常会遇到需要更改网站页面的情况。
这时候,我们需要在保证用户访问体验的同时,将旧页面的权重和排名转移到新页面上。
这个过程就是通过301重定向来实现的。
301重定向是一种HTTP协议的状态码,它告诉搜索引擎和用户请求的页面已经移动到了新的URL地址。
这个状态码是永久性重定向,意味着搜索引擎会更新它们的索引,把旧的页面权重和排名转移到新的页面上。
下面是301重定向请求的流程:1. 用户请求访问旧页面当用户在浏览器中输入旧页面的URL地址或通过搜索引擎点击链接访问旧页面时,浏览器会发送一个HTTP请求到服务器。
2. 服务器接收到请求服务器收到用户的请求后,会检查请求的URL是否需要重定向。
如果需要重定向,服务器会发出一个301状态码,告诉浏览器请求的页面已经永久移到了新的URL地址上。
3. 浏览器接收到301状态码当浏览器接收到服务器发出的301状态码时,它会自动向新的URL 地址发送一个新的HTTP请求。
4. 服务器重定向请求到新的URL地址服务器接收到新的HTTP请求后,会将请求重定向到新的URL地址。
这个过程是透明的,用户不会察觉到URL地址已经发生了变化。
5. 浏览器显示新页面内容当服务器将请求重定向到新的URL地址后,浏览器会显示新页面的内容。
用户可以继续访问和浏览页面,而不会感觉到页面发生了变化。
需要注意的是,301重定向是一种永久性重定向,意味着搜索引擎会把旧的页面的权重和排名转移到新的页面上。
如果需要临时性重定向,可以使用302状态码。
总结301重定向是一种对网站进行优化的重要手段。
通过将旧页面的权重和排名转移到新页面上,可以保证网站在搜索引擎中的排名和权重不会受到影响。
在进行网站迁移、更改URL地址等操作时,需要注意对旧页面进行301重定向,确保用户和搜索引擎可以访问到正确的页面。
301措施
301措施301措施是一种常见的网站重定向方法,它可以将某个页面的URL转换为另一个页面的URL,这样就可以实现对网站内容的重新定位或重组。
在网站开发和维护方面,301措施具有重要作用,可以帮助网站提高SEO排名,优化网站结构和用户体验。
下面将详细介绍301措施的功能、使用方法和优势。
一、301措施的功能。
1.引擎重定向:当用户的关键词和网站内容不符合时,可以通过301措施将用户转向正确的网页,从而提高引擎的效果。
2.网页重定向:当网站进行改版、升级或整合时,需要对部分网页进行重定向,这时候301措施就能派上用场。
3.网站结构优化:在开发网站时,为了实现网站优化和用户体验,需要对网站结构进行重构和调整,这时候301措施就能起到帮助作用。
二、301措施的使用方法。
对于301措施的使用方法,主要分为两种情况:一种是基于服务器端,另一种是基于CMS系统。
1.基于服务器端。
针对服务器端的301措施,主要是通过.htaccess文件来实现。
其具体操作步骤如下:(1)打开服务器后台,找到网站所在目录下的.htaccess文件。
(2)打开.htaccess文件,并在文件端部添加以下代码:(3)保存文件并上传到服务器上,即可实现301重定向。
2.基于CMS系统。
对于基于CMS系统的网站,如WordPress,一般通过插件来实现301措施,具体步骤如下:(1)在WordPress后台,选择“插件”-“安装插件”选项,“Redirection”插件并进行安装。
(2)安装成功后,进入“工具”-“重定向”选项,点击“添加新的重定向”按钮。
(3)在“重定向从”框中填写旧页面的URL,在“重定向到”框中填写新页面的URL,点击“添加重定向”按钮,即可完成301措施。
三、301措施的优势。
1.优化引擎结果:301措施可以帮助网站优化SEO排名和质量分数,从而提高引擎结果的质量和数量。
2.提升用户体验:通过301措施,可以有效地帮助用户快速地找到相关信息,提升用户体验,增加用户粘性和忠诚度。
http状态码301和302详解及区别——辛酸的探索之路
http状态码301和302详解及区别——⾟酸的探索之路⼀直对http状态码301和302的理解⽐较模糊,在遇到实际的问题和翻阅各种资料了解后,算是有了⼀定的理解。
这⾥记录下,希望能有新的认识。
⼤家也共勉。
官⽅的⽐较简洁的说明:301 redirect: 301 代表永久性转移(Permanently Moved)302 redirect: 302 代表暂时性转移(Temporarily Moved )ps:这⾥也顺带记住了两个⽐较相近的英语单词(permanently、temporarily),嘻哈!详细来说,301和302状态码都表⽰重定向,就是说浏览器在拿到服务器返回的这个状态码后会⾃动跳转到⼀个新的URL地址,这个地址可以从响应的Location⾸部中获取(⽤户看到的效果就是他输⼊的地址A瞬间变成了另⼀个地址B)——这是它们的共同点。
他们的不同在于。
301表⽰旧地址A的资源已经被永久地移除了(这个资源不可访问了),搜索引擎在抓取新内容的同时也将旧的⽹址交换为重定向之后的⽹址;302表⽰旧地址A的资源还在(仍然可以访问),这个重定向只是临时地从旧地址A跳转到地址B,搜索引擎会抓取新的内容⽽保存旧的⽹址。
这⾥开启傻⽠⾃问⾃答模式(⾃⼰可能想到的疑问):1、什么是重定向啊?就是地址A跳转到地址B啦。
百度百科的解释:重定向(Redirect)就是通过各种⽅法将各种⽹络请求重新定个⽅向转到其它位置(如:⽹页重定向、域名的重定向、路由选择的变化也是对数据报⽂经由路径的⼀种重定向)。
2、可是,为什么要进⾏重定向啊?什么时候需要重定向呢?想跳就跳,就跳的漂亮。
还是借鉴百度百科:1)⽹站调整(如改变⽹页⽬录结构);2)⽹页被移到⼀个新地址;3)⽹页扩展名改变(如应⽤需要把.php改成.Html或.shtml)。
这种情况下,如果不做重定向,则⽤户收藏夹或搜索引擎数据库中旧地址只能让访问客户得到⼀个404页⾯错误信息,访问流量⽩⽩丧失;再者某些注册了多个域名的⽹站,也需要通过重定向让访问这些域名的⽤户⾃动跳转到主站点等。
url和301转向(重定向跳转)的实现
url转发和301转向(重定向跳转)的实现301转向(跳转,重定向)的作用为什么要使用301转向?首先第一条就是刚才我们提到的为了seo优化,在如何url网址规范化中也提到,设置301转向后,原来的页面将返回301 HTTP 状态码给浏览器或者搜索引擎,告知搜索引擎次页面已经永久重定向到了新的网页上,spider就不会索引原网页,同时也会将原网页的PR权重传递给跳转到的新网页。
如果返回的是302状态码,则告诉spider 页面跳转只是临时的,spider仍然会索引原网页,这就造成了重复页面问题(即Google 补充材料)。
如 302 跳转到,它们就会被当做两个重复页面。
其次,由于各种原因要更换域名时,可以使用301重定向将老域名301转向到新的域名,这样老域名的流量不会流失,PR权重也会转移。
另外当有注册了多个不同域名,指向到同一网站时,也可以只设置一个主域名,将其他域名设置301转向到主域名,这样各个域名就不会分散权重。
因此使用301转向很有必要。
url转发的原理url转发有两种方式,隐藏转发和(url转发后浏览器地址栏输入的网址不变)不隐藏转发(也叫显性转发:url转发后地址栏显示的地址为转发后的网址)。
有人测试过,不管是隐藏转发还是不隐藏转发,根据不同的域名注册服务商,可能会返回不同的http header。
有的域名服务商管理后台设置的url转发功能(URL Forwarding)会使服务器返回302状态码给搜索引擎,而不是301 http 状态码。
据说这类url转发有的是通过给浏览器窗口套用一个框架iframe的方式来实现隐藏转发,有的则是使用Javascript或Meta Refresh来实现不隐藏方式的url转发,很少是真正用了301 重定向方法的。
所以大家还是尽量少用url转发功能,而是自己去手工设置实现301转向。
如何实现301重定向前面我们已经提到了很多关于WordPress等404页面的设置方法。
中国重汽厂家代码(最新版)
衡水华鹏 邢台众力汽车配套有限公司 磁县太行机械铸造有限公司 山西迎宪铸造有限公司 山西亿都 山西大同齿轮集团有限责任公司 长治市中天汽车半轴有限公司 山西利虎 沈阳暖风机 沈阳丰驰 沈阳蓄电池 长春富奥江森 长春曼.胡默尔富奥滤清器有限公司 上海曼胡默尔 中国米其林 沈阳帕卡 沈阳兴华 沈阳翱翔实业有限公司 沈阳航天新星机电有限责任公司精密非标设备制造厂 瓦房店轴承股份有限公司 瓦轴 大连液压件 大连新型推力轴承 大连本德 大连金牛 大连迪普 大连盘器 大连天纳克 大连安迪 鞍钢国贸 鞍钢 辽宁衡业汽车新材有限公司 抚顺特钢
164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196
23.02.00529 31.00.00001 31.00.00017 31.00.00105 31.00.00106 31.00.00161 31.00.00309 31.00.00952 31.00.0TG12 31.01.00186 31.01.00191 31.01.00220 31.01.00221 31.01.00248 31.01.00347 31.01.00348 31.01.00367 31.01.00367 31.01.00370 31.01.00371 31.01.00391 31.01.00400 31.01.00401 31.01.00429 31.01.00434 31.01.00485 31.01.00530 31.01.00531 31.01.00532 31.01.00533 31.01.00534 31.01.00535 31.01.00648
网站301重定向之php代码
网站301重定向之php代码在seo优化过程中为了集中权重,很多人会选择把不带www的域名301重定向至带www的域名上面,例如把重定向到上面来,这样对整个网站建设来说不至于流失权重,今天说下php网站的301重定向代码。
代码示例:<?php$the_host = $_SERVER['HTTP_HOST'];$request_uri = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : '';if($the_host == ''){header('HTTP/1.1 301 Moved Permanently');header('Location: '.$request_uri);}>代码详解:<?php————————————————php开始标签$_SERVER['HTTP_HOST']————————获取当前网页的根域名isset($_SERVER['REQUEST_URI']) ?——判断$_SERVER['REQUEST_URI']变量是否设定if($the_host == '')—————判断变量$the_host与是否相等header('HTTP/1.1 301 Moved Permanently')发出301头部信息header('Location: '.$request_uri)发出跳转,把当前页面跳转到>——————————————————php结束标签复制以上代码到网站头部,把xxxx改成你的域名,就完成了文章开始所说的301重定向要求。
经本人本地测试,在php文件里正常可用,欢迎大家交流网站方面知识。
php curl 301 代码
一、什么是PHP CURL?PHP CURL 是一个用于在 PHP 中进行 URL 数据传输的功能。
它可以用来发送HTTP请求,并通过GET、POST、PUT、DELETE等方法获取网页数据。
它也支持 HTTPS,FTP 和文件下载等操作。
CURL在PHP中通过cURL扩展提供支持。
二、HTTP 301状态码301状态码是 HTTP 的状态码之一,当服务器向客户端返回301状态码时,表示请求的资源已经被永久转移到了另一个URL。
这意味着将来的请求应该直接使用新的URL,而不是之前的URL。
这个状态码告诉谷歌和其他搜索引擎,这个URL的权重应该被传递到新的URL。
三、PHP CURL 发送 301 重定向请求当我们在PHP中使用CURL发送请求时,经常会遇到需要处理301重定向的情况。
301重定向会使得请求的URL被转移到另一个URL,为了让CURL能够正确地处理301重定向,我们需要设置CURLOPT_FOLLOWLOCATION选项为true。
这样CURL就会按照新的URL进行请求。
四、PHP CURL 示例代码接下来,我将展示一个简单的示例代码,来演示如何使用PHP CURL 发送301重定向请求。
<?php$ch = curl_init('网络协议xxxcurl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);$result = curl_exec($ch);curl_close($ch);echo $result;>在这个示例中,我们首先使用curl_init函数初始化一个CURL会话,并设置了请求的URL为网络协议xxx。
然后使用curl_setopt函数设置了CURLOPT_RETURNTRANSFER选项为true,表示CURL请求的结果会被返回,以便后续操作使用。
301重定向实现方法
301重定向实现方法,及对网站优化的作用Author:Flymorn Source:飘易博客Categories:SEO技术 PostTime:2008-2-25 10:02:40正文:301重定向(也叫301转向,301跳转)对网站优化所起的作用是不可忽视的,尤其是针对SE(搜索引擎)处理网站页面权重的时候,更加显得重要。
网站换了新域名,默认首页需要跳转等,从SEO角度来说,我们都建议使用301重定向,而不是JS跳转或META R EFRESH或302转向,这些很容易引来SE的惩罚。
什么是301重定向呢?301重定向是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。
其它常见的状态码还包括,200表示一切正常,404网页找不到,302暂时转向,等等。
为什么要用301转向?网址转向方法主要包括:301转向,302转向,JavaScript转向,PHP/ASP/CGI转向,ME TA REFRESH网页META刷新等。
302转向可能会有URL规范化问题。
其它方法都是常用的作弊手法,当然不是说不可以正当地用,方法本身没有错,但被作弊者用多了,搜索引擎对这些可疑的转向都很敏感。
何必冒险呢。
关于301转向和网址规范化问题,大家可以去阅读下ZAC写的文章。
本文,仅仅讨论在ASP环境下,如何设置301重定向问题;其他语言亦可参考。
我们知道,网站的首页一般有以下几种:/index.asp/index.asp……很自然的,以上的这些网址形式都指向到了一个网站,如果在搜索引擎中都启用这些形式,那么,网页权重,PR都会分散到这几个网址上,虽然,它们都是一个网站,而这不是我们想要的结果。
那么,如何将以上的首页形式都定向到自己想要的网址上呢,比如http://ww ,从而使得这些分散的网页权重,PR都集中到上。
这里就需要使用301永久重定向了。
HTTP请求返回状态码整理
HTTP请求返回状态码整理状态码的类别一、2XX成功1. 200 OK表示从客户端发来的请求在服务器被正常处理了。
2. 204 no content表示从客户端发来的请求在服务器被正常处理了,但在返回的响应报文中不含实体的主体部分。
3. 206 partial content表示客户端进行了范围请求,而服务器成功执行了这部分的GET 请求。
二、3XX重定向1. 301 moved permanently永久性重定向。
该状态码表示请求的资源已被分配了新的URI,以后应使用资源现在所指的URI。
也就是说,如果已经把资源对应的URI保存为书签了,这时应按Location首部字段提示的URI重新保存。
如下方给出的请求URI,当指定资源路径的最后忘记添加斜杠“/”,就会产生301状态码/sample•1•22. 302 found临时性重定向。
该状态码表示请求的资源已被分配了新的URI,希望用户(本次)能使用新的URI访问。
与301的区别:302代表的资源不是被永久移动,只是临时性质的,已移动的资源对应的URI将来还有可能发生改变。
如用户把URI保存成书签,但不会像301出现时那样去更新书签,而是仍旧保留返回302的页面对应的URI。
•1•2•33. 303 see other该状态码表示由于请求对应的资源存在着另一个URI,应使用GET方法定向获取请求的资源。
与302的区别:303明确表示客户端应采用GET方法获取资源•1当301、302、303响应状态码返回时,几乎所有的浏览器都会把POST改为GET,并删除请求报文内的主体,之后请求会自动再次发送。
301、302标准是禁止将POST改为GET的,但实际使用时大家都会这么做。
4. 304 not modified该状态码表示客户端发送附带条件的请求时,服务器端资源已找到,但未符合条件请求。
304返回时,不包含任何响应的主体部分。
304虽然被划分在3XX类别中,但是和重定向没有关系。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
导读:在我们的网站建设中,时常会遇到需要网页重定向的情况:像网站调整,如改变网页目录结构,网页被移到一个新地址,再或者,网页扩展名改变,如因应用需要把.php改成.Html或.shtml,在这种情况下,如果不做重定向,则用户收藏夹或搜索引擎数据库中旧地址只能让访问客户还会得到一个404页面错误信息,访问流量白白丧失;再如某些注册了多个域名的网站,也需要通过重定向让访问这些域名的用户自动跳转到主站点。
在我们的网站建设中,时常会遇到需要网页重定向的情况:像网站调整,如改变网页目录结构,网页被移到一个新地址,再或者,网页扩展名改变,如因应用需要把.php改成.Html或.shtml,在这种情况下,如果不做重定向,则用户收藏夹或搜索引擎数据库中旧地址只能让访问客户还会得到一个404页面错误信息,访问流量白白丧失;再如某些注册了多个域名的网站,也需要通过重定向让访问这些域名的用户自动跳转到主站点。
根据吴总总结,301转向就是网址的重定向,就是不常用的网址跳转到常用网址,比如把永久跳到上面,301转向可以是单个页面,也可以是整站。
1、IIS下301设置
Internet信息服务管理器 -> 虚拟目录 -> 重定向到URL,输入需要转向的目标URL,并选择“资源的永久重定向”。
2、ASP下的301转向代码
<%@ Language=VBScript %>
<%
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", ""
%>
3、下的301转向代码
<script runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location",);
}
</script>
4、PHP下的301转向代码
header("HTTP/1.1 301 Moved Permanently");
header("Location: ");
exit();
5、CGI Perl下的301转向代码
$q = new CGI;
print $q->redirect("");
6、JSP下的301转向代码
<%
response.setStatus(301);
response.setHeader( "Location", "" ); response.setHeader( "Connection", "close" );
%>
7、Apache下301转向代码
新建.htaccess文件,输入下列内容(需要开启mod_rewrite):
1)将不带WWW的域名转向到带WWW的域名下
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^ [NC]
RewriteRule ^(.*)$ /$1 [L,R=301]
2)重定向到新域名
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^(.*)$ /$1 [L,R=301] 3)使用正则进行301转向,实现伪静态
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^news-(.+)\.html$ news.php?id=$1
将news.php?id=123这样的地址转向到news-123.html
8、Apache下vhosts.conf中配置301转向
为实现URL规范化,SEO通常将不带WWW的域名转向到带WWW域名,vhosts.conf中配置为:
<VirtualHost *:80>
ServerName
DocumentRoot /home/lesishu
</VirtualHost>
<VirtualHost *:80>
ServerName
RedirectMatch permanent ^/(.*) /$1 </VirtualHost>。