服务器重定向与客户端重定向学习,辨析与实现_html/css_WEB-ITnose
Jun 24, 2016 am 11:55 AM
1. 定义
网域名称转址(英语:URL redirection,或称网址重定向或URL重定向),是指当用户浏览某个网址时,将他导向到另一个网址的技术
2. 作用
相似域名
网站迁移至新域名
-
记录外送链接
例:QQ邮箱中点击邮件链接是的警告其实服务器在收到邮件时就以做了处理
-
简化网址
例:微博中的附加链接
3. 分类
-
服务器端跳转(forward跳转)
- 原理
用户 请求 -> 原服务器 请求 -> 资源服务器 响应 -> 用户
- 特点
重定向后用户的URL没发生任何变化
只能进行站点内跳转
根目录代表服务器跟路径webapps
request设置的属性在跳转后的页面仍可以使用
使用 传递参数
执行到跳转语句后马上无条件跳转,之后的代码不再执行(跳转之前一定要释放全部资源)
-
客户端跳转(response跳转)
- 原理
用户 请求 -> 原服务器 响应 -> 用户 请求 -> 资源服务器 响应 -> 用户
- 特点
URL变为重定向后所请求的URL
可以进行站外跳转
根目录代表站点根路径
跳转后的页面不能使用上一个页面的request属性
使用地址重写传递参数(response.sendRedirect("URL?参数名=参数值"))
所有代码执行完毕后跳转
4. 实现
- PHP
<?phpheader('HTTP/1.1 301 Moved Permanently');header('Location: http://www.example.com/');exit();
<?phpheader( 'Refresh: 0; url=http://www.example.com/' );exit();
- 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
- Apache mod_rewrite
RewriteEngine onRewriteCond %{HTTP_HOST} ^([^.:]+\.)*oldsite\.example\.com\.?(:[0-9]*)?$ [NC]RewriteRule ^(.*)$ http://newsite.example.net/$1 [R=301,L]
- 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>
- HTML的Frame redirects
<html> <frameset rows="100%"> <frame src="http://www.example.com/"> </frameset></html>
- JavaScript redirects
window.location='http://www.example.com/';

인기 기사

인기 기사

뜨거운 기사 태그

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











공식 계정 웹 페이지의 캐싱 업데이트에 어려움 : 버전 업데이트 후 사용자 경험에 영향을 미치는 이전 캐시를 피하는 방법은 무엇입니까?

HTML5 양식 유효성 검사 속성을 사용하여 사용자 입력을 유효성있게하려면 어떻게합니까?

& lt; iframe & gt; 꼬리표? 보안을 사용할 때 보안 고려 사항은 무엇입니까?

웹 페이지의 PNG 이미지에 뇌졸중 효과를 효율적으로 추가하는 방법은 무엇입니까?

뷰포트 메타 태그는 무엇입니까? 반응 형 디자인에 중요한 이유는 무엇입니까?
