http报文在php中的应用场景

简介: http报文在php中的应用场景

应用场景


设置响应文件类型


PHP 中 header 函数专门用于设置响应头


像header('Content-Type: text/css');


HTTP MIME type 指的就是 像


text/css


text/html


text/plain


applcation/javascript


案例1:自身简单设置文件类型


<?php
// PHP 中 header 函数专门用于设置响应头
header('Content-Type: text/html; charset=GBK');
?>
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>这是一个网页内容</title>
</head>
<body>
  <h1>这是一个网页内容</h1>
</body>
</html>


案例2:设置外链php的文件类型



↓


在index.html中,外链style.css style.php(设置文件类型为css) script.php(设置文件类型为javascript)


<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <!-- 外链.css -->
  <link rel="stylesheet" href="style.css">
  <!-- 外链.php -->
  <link rel="stylesheet" href="style.php">
</head>
<body>
  <script src="script.php"></script>
</body>
</html>


style.css


body {
  background-color: hotpink;
}


style.php


<?php
// 通过 HTTP 响应头告诉客户端我们给你的内容是 CSS 代码
header('Content-Type: text/css');
?>
body {
  background-color: hotpink;
}


script.php


<?php
// 通过 HTTP 响应头告诉客户端我们给你的内容是 CSS 代码
header('Content-Type: application/javascript');
?>
alert(1);


重定向(跳转到其他网页)


这里是在 响应头中添加一个 location 的头信息


像header('Location: 01-content-type.php');


注意:


  • 客户端浏览器在接收到这个头信息过后会自动跳转到 指定的地址


  • 切记不能循环重定向


案例:


<?php
// 这里是在 响应头中添加一个 location 的头信息
// header('Location: 01-content-type.php');
// 客户端浏览器在接收到这个头信息过后会自动跳转到 指定的地址
// 切记不能循环重定向
header('Location: 03-location2.php');


<?php
header('Location: https://www.baidu.com');


下载文件


案例:


download.php


<a href="a.php">下载</a>


a.php


<?php
// 让文件下载
header('Content-Type: application/octet-stream');
// 设置默认下载文件名
header('Content-Disposition: attachment; filename=demo.txt');
?>
要下载的文本, 最终将本文件转化为txt形式


图片防盗链


通过判断请求来源 Referer 是否为本网站从而区分是否是合法请求


详细内容可参考这篇文章


https://blog.csdn.net/wanchong958/article/details/83339715

相关文章
|
PHP 开发工具 开发者
Xdebug在PHP中的应用
Xdebug 是一款非常实用的 PHP 调试工具,它为开发者提供了丰富的功能和便利,帮助开发者更高效地进行调试工作。熟练掌握 Xdebug 的使用方法,对于提高 PHP 开发质量和效率具有重要意义。
616 154
|
SQL 关系型数据库 数据库连接
PHP脚本中应用while循环按照ID顺序列出数据集的技巧。
代码整体运行流程非常简单高效:连接数据库、发送查询、处理结果、关闭连接。下面的步骤是常规的PHP数据库操作流程,无需复杂处理即可实现按ID顺序列出数据集。确保代码清晰,易于理解,且可执行性强。如果在生产环境中应用这段代码,需要注意处理数据库连接的安全性、查询效率以及异常处理等。
266 16
|
存储 消息中间件 前端开发
PHP后端与uni-app前端协同的校园圈子系统:校园社交场景的跨端开发实践
校园圈子系统校园论坛小程序采用uni-app前端框架,支持多端运行,结合PHP后端(如ThinkPHP/Laravel),实现用户认证、社交关系管理、动态发布与实时聊天功能。前端通过组件化开发和uni.request与后端交互,后端提供RESTful API处理业务逻辑并存储数据于MySQL。同时引入Redis缓存热点数据,RabbitMQ处理异步任务,优化系统性能。核心功能包括JWT身份验证、好友系统、WebSocket实时聊天及活动管理,确保高效稳定的用户体验。
888 4
PHP后端与uni-app前端协同的校园圈子系统:校园社交场景的跨端开发实践
|
网络协议 安全 API
WebSocket、Socket、TCP 和 HTTP 的差别与应用场景
WebSocket、Socket、TCP 和 HTTP 是网络通信中的四大“使者”,各具特色:HTTP 适合短时请求,TCP 稳定可靠,Socket 灵活定制,WebSocket 实现实时双向通信。本文用通俗语言解析它们的区别与应用场景,助你为项目选择最合适的通信方式。
3549 3
|
存储 监控 NoSQL
在阿里云上构建高性能PHP应用:最佳实践指南
本文档从四个核心方面阐述了系统设计与优化的全面方案:**架构设计原则**包括分层架构(Web/逻辑/数据分离)与无状态设计(Redis会话存储、OSS文件管理);**核心服务选型**推荐高性价比的ECS、高性能Redis企业版及PolarDB数据库等;**性能优化技巧**涵盖代码层面(OPcache、Swoole框架)、数据库优化(复合索引、分库分表)以及进阶容器化和函数计算策略;**监控体系搭建**则通过云监控、ARMS应用监控、日志服务SLS等工具,确保系统稳定高效运行。
364 10
|
存储 自然语言处理 安全
PHP-Casbin:现代化 PHP 应用的权限管理引擎
PHP-Casbin 是基于 PERM 模型的轻量级权限框架,支持 ACL、RBAC、ABAC 等多种访问控制模型,适用于 API 安全控制、企业权限管理等场景。其灵活配置、多语言协同与分布式支持,使其成为现代化 PHP 应用权限管理的首选工具。
487 0
|
PHP 开发者 UED
PHP中的异常处理:理解与应用
在编程的世界中,错误和异常就像是不请自来的客人——总是在你最不希望它们出现的时候敲门。对于PHP开发者来说,学会优雅地处理这些“不速之客”是提升代码质量和用户体验的关键。本文将带你深入理解PHP中的异常处理机制,通过实际的代码示例,展示如何捕获、处理以及自定义异常,让你的应用程序更加健壮和灵活。准备好迎接挑战,让我们共同探索PHP异常处理的奥秘吧!
364 66
|
Web App开发 缓存 数据安全/隐私保护
Django全栈实战:HTTP状态码与业务状态码的分层设计与实战应用
HTTP状态码是服务器响应请求的3位数字代码,分为1xx(信息)、2xx(成功)、3xx(重定向)、4xx(客户端错误)、5xx(服务器错误)。业务状态码则用于描述具体业务逻辑结果,常在响应体中返回。二者在前后端交互中有不同用途和处理方式。本文还介绍了如何在Django项目中设计并使用业务状态码。
895 0
|
存储 监控 算法
公司员工电脑监控软件剖析:PHP 布隆过滤器算法的应用与效能探究
在数字化办公的浪潮下,公司员工电脑监控软件成为企业管理的重要工具,它能够帮助企业了解员工的工作状态、保障数据安全以及提升工作效率。然而,随着监控数据量的不断增长,如何高效地处理和查询这些数据成为了关键问题。布隆过滤器(Bloom Filter)作为一种高效的概率型数据结构,在公司员工电脑监控软件中展现出独特的优势,本文将深入探讨 PHP 语言实现的布隆过滤器算法在该软件中的应用。
279 1
|
关系型数据库 MySQL PHP
源码编译安装LAMP(HTTP服务,MYSQL ,PHP,以及bbs论坛)
通过以上步骤,你可以成功地在一台Linux服务器上从源码编译并安装LAMP环境,并配置一个BBS论坛(Discuz!)。这些步骤涵盖了从安装依赖、下载源代码、配置编译到安装完成的所有细节。每个命令的解释确保了过程的透明度,使即使是非专业人士也能够理解整个流程。
578 18