php 重定向与转发
1、重定向
1)header重定向
header('location:https://www.baidu.com');
//确保后续代码不执行
die();
2)使用meta标签
<?php
< html>
< head>
< meta http-equiv="refresh" content="1;
url=< ?php echo 'www.baidu.com'; ?>">
< /head>
< body>
页面只停留一秒……
< /body>
< /html>
3)javascript
< ?php echo "< script language='javascript' type='text/javascript'>"; echo "window.location.href='http://www.baidu.com'"; echo "< /script>"; ?>
2、转发
1)curl转发
<?php
function get_url_content($url){
$user_agent = "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0)";
$ch = curl_init();
//curl_setopt ($ch, CURLOPT_PROXY, $proxy);
curl_setopt ($ch, CURLOPT_URL, $url);//设置要访问的IP
curl_setopt ($ch, CURLOPT_USERAGENT, $user_agent);//模拟用户使用的浏览器
@curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1 ); // 使用自动跳转
curl_setopt ($ch, CURLOPT_TIMEOUT, 60); //设置超时时间
curl_setopt ($ch, CURLOPT_AUTOREFERER, 1 ); // 自动设置Referer
curl_setopt ($ch, CURLOPT_COOKIEJAR, 'c:\cookie.txt');
curl_setopt ($ch, CURLOPT_HEADER,0); //显示返回的HEAD区域的内容
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_TIMEOUT, 10);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
print_r(get_url_content('http://www.baidu.com'));
?>
2)file_get_contents()转发
print_r(file_get_contents('http://www.baidu.com'));
3、总结
1)转发作用于服务器端,是在服务器内部进行转发。重定向作用于客户端,相当于客户端重新发送一次新的请求。
2)转发后地址栏不会改变。重定向后地址栏改变。
3)转发后资源能获取到请求中的数据。重定向后的资源不能获得原请求中的数据。
4)转发只能在本应用内部资源之间进行。重定向可以跳转到任何网络资源。
5)转发可以访问受保护资源(WEB-INF里的资源)。重定向不能定位到受保护资源。
php 重定向与转发相关推荐
- java 重定向和转发(转载)
jsp中result的默认类型为dispatcher. dispatcher:与<jsp:forward page=""/>效果相同 redirect:与respons ...
- 重定向和转发之间的区别
转发与重定向的区别 转发方式:request.getRequestDispatcher().forward(); 重定向方式:response.sendRedirect(); 下面是HttpServl ...
- JavaWeb第二讲 重定向与转发 doGet()与doPost()
(一)重定向与转发 转发**(服务器行为)** request.getRequestDispatcher("url").forward(request, response); 重定 ...
- struts result type redirect 重定向和转发的区别
我们在使用struts2进行配置struts.xml的时候,<result>中有个tyep属性用来配置跳转类型 默认不写时tyep="dispatcher",我们可以根 ...
- 重定向地址_JavaWeb - Servlet:重定向和转发,状态管理
Servlet + JDBC 应用 在 Servlet 中可以使用 JDBC 技术访问数据库,常见功能如下: 查询 DB 数据,然后生成显示页面,例如:列表显示功能. 接收请求参数,然后对 DB 操作 ...
- SpringMVC系列(九)自定义视图、重定向、转发
一.自定义视图 1. 自定义一个视图HelloView.java,使用@Component注解交给Spring IOC容器处理 1 package com.study.springmvc.views; ...
- Java中重定向,转发深入理解 2021-04-26
关于重定向还有转发的一些了解,首先这篇博文是写的关于没有视图解析器的情况下怎么进行重定向和转发- ·····转发与重定向的区别 实现转发调用的是HttpServletRequest对象中的方法 实现重 ...
- java web中的重定向和转发,forward和sendRedriect
前台页面到后台请求,后台给予回应分为重定向和转发两种.forward和sendRedirect的区别. 1,在forward方式下,在执行前jsp对象或者servlet对象的过程中去调用目标文件对应的 ...
- springmvc重定向到另一个项目_Spring MVC重定向和转发详解
Spring MVC请求方式分为转发.重定向两种,是用forward和redirect关键字在controller层进行处理.本文我们就来探讨一下Spring MVC请求方式中的Spring MVC重 ...
- 重定向和转发的区别+使用情景
重定向和转发的区别: // 重定向 response.sendRedirect("xxx.jsp或者servlet"); // 转发 request.getRequestDispa ...
最新文章
- 再学 GDI+[7]: DrawLines - 绘制一组直线
- 「Web2.0」的创造者表示:为Web3.0喝彩还为时尚早
- oracle:集合查询
- php唯一性查询,ThinkPHP5.0数据更新验证唯一性怎么验证。
- 【Spring注解系列12】@Value与@PropertySource注解
- 安装linux桌面总结
- CRM公海自动回收规则
- (pytorch-深度学习)SE-ResNet的pytorch实现
- 退出出库复核是什么意思_电商仓储与传统仓储有什么不同?
- SpringBoot—数据库初始化脚本配置
- UnityShader中插值平滑曲线
- ECharts-第一篇最简单的应用
- Pycharm community配置Django
- 解决java.lang.NoClassDefFoundError: com.android.tools.fd.runtime.AppInfo
- 微软开启imap服务器,连接到 IMAP 或 SMTP 服务器
- 计算机简历如何写,简历计算机能力怎么写
- 交通仿真 | SUMO第一步
- 解决因多网卡导致dubbo注册到ZK的IP错误问题,dubbox(当当,2.8.4)升级至dubbo(Apache,2.7.15)并集成
- CCAI 2017 | 澳大利亚新南威尔士大学教授 Toby Walsh 将带来精彩演讲
- 日月年时分秒转换为年月日时分秒