php中302是什么错误

青灯夜游
发布: 2022-04-22 16:36:14
原创
6732人浏览过
在php中,302不是错误,而是HTTP响应状态码,意思为“临时重定向”,表示被访问页面因为各种需要被临时跳转到其他页面;可利用header()来实现302跳转,语法“header('Location: 跳转url',true,302)”。

php中302是什么错误

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

302 代表暂时性转移(Temporarily Moved ),是HTTP响应状态码并不是错误。

302是临时重定向的意思,表示被访问页面因为各种需要被临时跳转到其他页面。

php中,可以利用header()来实现302跳转。

立即学习PHP免费学习笔记(深入)”;

有两种语法格式:

  • 语法格式1:

header('HTTP/1.1 302 Moved Permanently');
header('Location: https://www.php.cn');
登录后复制
  • 语法格式2:

header('Location: https://www.php.cn', true, 302);
登录后复制

额外再提一句,如果要自适应HTTPS/HTTP的话,这样就可以了:

header('Location: //www.php.cn', true, 302);
登录后复制

扩展知识:

HTTP--3xx(重定向)响应状态码

要完成请求,需要进一步操作。通常,这些状态码用来重定向。Google 建议您在每次请求中使用重定向不要超过 5 次。您可以使用网站管理员工具查看一下 Googlebot 在抓取重定向网页时是否遇到问题。诊断下的网络抓取页列出了由于重定向错误导致 Googlebot 无法抓取的网址。

  •   300(多种选择): 针对请求,服务器可执行多种操作。服务器可根据请求者 (user agent) 选择一项操作,或提供操作列表供请求者选择。

  •   301(永久移动): 请求的网页已永久移动到新位置。服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。您应使用此代码告诉 Googlebot 某个网页或网站已永久移动到新位置。

  •   302(临时移动): 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来响应以后的请求。此代码与响应 get 和 head 请求的301代码类似,会自动将请求者转到不同的位置,但不应使用此代码来告诉googlebot某个网页或者网站已经移动,因为googlebot会继续抓取原有位置并编制索引。

    动态WEB网站中的PHP和MySQL:直观的QuickPro指南第2版
    动态WEB网站中的PHP和MySQL:直观的QuickPro指南第2版

    动态WEB网站中的PHP和MySQL详细反映实际程序的需求,仔细地探讨外部数据的验证(例如信用卡卡号的格式)、用户登录以及如何使用模板建立网页的标准外观。动态WEB网站中的PHP和MySQL的内容不仅仅是这些。书中还提到如何串联JavaScript与PHP让用户操作时更快、更方便。还有正确处理用户输入错误的方法,让网站看起来更专业。另外还引入大量来自PEAR外挂函数库的强大功能,对常用的、强大的包

    动态WEB网站中的PHP和MySQL:直观的QuickPro指南第2版 508
    查看详情 动态WEB网站中的PHP和MySQL:直观的QuickPro指南第2版
  •    303(查看其它位置): 请求者应当对不同位置使用单独的 get 请求来检索响应时,服务器返回此代码。对于出head之外的所有请求,服务器会自动转到其它位置;

  •    304(未修改): 自从上次请求后,请求的网页未修改过。服务器返回此响应时,不会返回网页内容;如果网页自请求者上次请求后再也没有更改过,应将服务器配置为返回此响应(称为if-modified-Since HTTP标头)。服务器可以告诉 googlebot 自从上次抓取后网页没有变更,进而节省带宽和开销。

  •    305(使用代理): 请求者只能使用代理访问请求的网页。如果服务器返回此响应,还表示请求者应使用代理。

  •    307(临时重定向): 服务器目前从不同位置的网页响应请求,但请求者应该继续使用原有位置来响应以后的请求,此代码与响应 get 和 head 请求的<a href=""></a>代码类似,会自动将请求者转到不同的位置,但不应该 告诉googlebot 某个页面或者网站已经移动,因为 googlebot 会继续抓取原有位置并编制索引。

PHP header 的7种用法

1.  跳转页面

header('Location:'.$url);  //Location和":"之间无空格。
登录后复制

2.  声明content-type

header('content-type:text/html;charset=utf-8');
登录后复制

3.  返回response状态码

header('HTTP/1.1 404 Not Found');
登录后复制

4. 在某个时间后执行跳转

header('Refresh: 10; url=http://www.php.cn/');  //10s后跳转。
登录后复制

5. 控制浏览器缓存

header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . "GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
登录后复制

6. . 执行http验证

header('HTTP/1.1 401 Unauthorized');
header('WWW-Authenticate: Basic realm="Top Secret"');
登录后复制

7. 执行下载操作

header('Content-Type: application/octet-stream'); //设置内容类型
header('Content-Disposition: attachment; filename="example.zip"'); //设置MIME用户作为附件
header('Content-Transfer-Encoding: binary'); //设置传输方式
header('Content-Length: '.filesize('example.zip')); //设置内容长度
登录后复制

推荐学习:《PHP视频教程

以上就是php中302是什么错误的详细内容,更多请关注php中文网其它相关文章!

相关标签:
php
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号