> 웹 프론트엔드 > HTML 튜토리얼 > 服务器重定向与客户端重定向学习,辨析与实现_html/css_WEB-ITnose

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

WBOY
풀어 주다: 2016-06-24 11:55:06
원래의
758명이 탐색했습니다.

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();
로그인 후 복사
<?phpheader( 'Refresh: 0; url=http://www.example.com/' );exit();
로그인 후 복사
  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
로그인 후 복사
  1. Apache mod_rewrite
RewriteEngine onRewriteCond %{HTTP_HOST} ^([^.:]+\.)*oldsite\.example\.com\.?(:[0-9]*)?$ [NC]RewriteRule ^(.*)$ http://newsite.example.net/$1 [R=301,L]
로그인 후 복사
  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>
로그인 후 복사
  1. HTML的Frame redirects
<html>    <frameset rows="100%">      <frame src="http://www.example.com/">    </frameset></html>
로그인 후 복사
  1. JavaScript redirects
window.location='http://www.example.com/';
로그인 후 복사

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿