Heim > Web-Frontend > HTML-Tutorial > 服务器重定向与客户端重定向学习,辨析与实现_html/css_WEB-ITnose

服务器重定向与客户端重定向学习,辨析与实现_html/css_WEB-ITnose

WBOY
Freigeben: 2016-06-24 11:55:06
Original
759 Leute haben es durchsucht

1. 定义

网域名称转址(英语:URL redirection,或称网址重定向或URL重定向),是指当用户浏览某个网址时,将他导向到另一个网址的技术

2. 作用

  1. 相似域名

  2. 网站迁移至新域名

  3. 记录外送链接

    例:QQ邮箱中点击邮件链接是的警告其实服务器在收到邮件时就以做了处理

  4. 简化网址

    例:微博中的附加链接

3. 分类

  1. 服务器端跳转(forward跳转)

    1. 原理

    用户 请求 -> 原服务器 请求 -> 资源服务器 响应 -> 用户

    1. 特点
  2. 重定向后用户的URL没发生任何变化

  3. 只能进行站点内跳转

  4. 根目录代表服务器跟路径webapps

  5. request设置的属性在跳转后的页面仍可以使用

  6. 使用 传递参数

  7. 执行到跳转语句后马上无条件跳转,之后的代码不再执行(跳转之前一定要释放全部资源)

  8. 客户端跳转(response跳转)

    1. 原理

    用户 请求 -> 原服务器 响应 -> 用户 请求 -> 资源服务器 响应 -> 用户

    1. 特点
  9. URL变为重定向后所请求的URL

  10. 可以进行站外跳转

  11. 根目录代表站点根路径

  12. 跳转后的页面不能使用上一个页面的request属性

  13. 使用地址重写传递参数(response.sendRedirect("URL?参数名=参数值"))

  14. 所有代码执行完毕后跳转

4. 实现

  1. PHP
<?phpheader('HTTP/1.1 301 Moved Permanently');header('Location: http://www.example.com/');exit();
Nach dem Login kopieren
<?phpheader( 'Refresh: 0; url=http://www.example.com/' );exit();
Nach dem Login kopieren
  1. Apache HTTP Server's mod_alias extension
Redirect permanent /oldpage.html http://www.example.com/newpage.htmlRedirect 301 /oldpage.html http://www.example.com/newpage.html
Nach dem Login kopieren
  1. Apache mod_rewrite
RewriteEngine onRewriteCond %{HTTP_HOST} ^([^.:]+\.)*oldsite\.example\.com\.?(:[0-9]*)?$ [NC]RewriteRule ^(.*)$ http://newsite.example.net/$1 [R=301,L]
Nach dem Login kopieren
  1. HTML的Refresh Meta tag and HTTP refresh header
<html>    <head>        <meta http-equiv="Refresh" content="0; url=http://www.example.com/" />    </head>    <body>    </body></html>
Nach dem Login kopieren
  1. HTML的Frame redirects
<html>    <frameset rows="100%">      <frame src="http://www.example.com/">    </frameset></html>
Nach dem Login kopieren
  1. JavaScript redirects
window.location='http://www.example.com/';
Nach dem Login kopieren

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage