PHP(13)HTTP协议
短信预约 -IT技能 免费直播动态提醒
PHP(13)HTTP协议
一、HTTP请求
1. 请求行
- 请求行独占一行。
- 形式:请求方式 资源路径 协议版本号
GET /index.php HTTP/1.1
2. 请求头
- Host:请求服务器的主机地址。
- Accept:当前请求能够接收服务器返回的类型(MIME类型)
- Accept-Language:接受的语言。
- User-Agent:客户浏览器的一些信息。
3. 请求体
- 只有POST请求会有请求体。
- 基本格式:资源名字=数据&资源名字=数据
二、HTTP响应
1. 响应行
- 形式:协议版本号 状态码 状态信息
HTTP/1.1 200 OK- 200 ok:成功
- 403 Forbidden:没权限访问
- 404 Not Found:未找到页面
- 500 Server Internal Error:服务器内部错误。
2. 响应头
- 时间: Wed, 15 Feb 2023 11:23:39 GMT
- 服务器:Server: nginx
- 内容长度:Content-Length: 55
- 内容类型:Content-Type: text/html; charset=utf-8
三、设置HTTP响应
- php中通过header函数来实现修改HTTP响应。
- 注意事项:header设置响应体之前不要有任何输出。
- Location:立即重定向,一旦见到此协议项,不再向下解析。
header('Location:/day10/upload_file02/index.html');
- Refresh:定时重定向,响应体会被解析。
header('Refresh:5;url=/day10/upload_file02/index.html');
- Content-type:内容类型,MIME类型。
header("Content-type:text/html;charset=utf-8");
- Content-disposition:内容类型,MIME扩展类型,通知浏览器不解析直接下载。
header('Content-disposition:attachment;filename=f.jpg');
四、模拟HTTP请求
- cURL是一个功能强大的开源库,支持HTTP、FTP、TELENT等协议。
- 用于防盗链。
步骤:
- 开启cURL扩展。php.ini => extension=curl
- 建立连接:
curl_init()
=> 激活一个cURL连接功能- 设置请求选项:
curl_setopt()
=> 设定选项,更多的设定选项看手册。- 执行请求:
curl_exec()
=> 执行选项(与服务器发起请求),得到服务器返回的内容。- 关闭连接:
curl_close
=> 关闭连接。
- 示例:
echo ""
;// 建立连接$ch = curl_init();// 设置连接对象curl_setopt($ch, CURLOPT_URL, "http://learn.com/day10/upload_file02/index.html");// 是否获取请求头curl_setopt($ch, CURLOPT_HEADER, 1);// 执行请求$content = curl_exec($ch);// 关闭简介curl_close($ch);
来源地址:https://blog.csdn.net/realoser/article/details/129045740
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341