Swoole从入门到入土(13)——HTTP服务器[配置]
开篇之前,先复习一下如何为一个server进行配置的设置:
$server->set(array(
'key' => 'value'
));
配置说明:
upload_tmp_dir:设置上传文件的临时目录。目录最大长度不得超过 220 字节
示例:
$server->set(array(
'upload_tmp_dir' => '/data/uploadfiles/',
));
http_parse_post:针对 Request 对象的配置,设置 POST 消息解析开关,默认开启。设置为 true 时自动将 Content-Type为x-www-form-urlencoded 的请求包体解析到 POST 数组。设置为 false 时将关闭 POST 解析。
示例:
$server->set(array(
'http_parse_post' => false,
));
http_parse_cookie:针对 Request 对象的配置,关闭 Cookie 解析,将在 header 中保留未经处理的原始的 Cookies 信息。默认开启
示例:
$server->set(array(
'http_parse_cookie' => false,
));
http_compression:针对 Response 对象的配置,启用压缩。默认为开启。
注意:
-http-chunk 不支持分段单独压缩,若使用 write 方法,将会强制关闭压缩。
-http_compression 在 v4.1.0 或更高版本可用。
-目前支持 gzip、br、deflate 三种压缩格式,底层会根据浏览器客户端传入的 Accept-Encoding 头自动选择压缩方式。
-gzip 和 deflate 依赖 zlib 库,在编译 Swoole 时底层会检测系统是否存在 zlib。可以使用 yum 或 apt-get 安装 zlib 库:sudo apt-get install libz-dev。
-br 压缩格式依赖 google 的 brotli 库,安装方式请自行搜索 install brotli on linux,在编译 Swoole 时底层会检测系统是否存在 brotli。
示例:
$server->set(array(
'http_compression' => false,
));
http_compression_level:压缩级别,针对 Response 对象的配置。$level 压缩等级,范围是 1-9,等级越高压缩后的尺寸越小,但 CPU 消耗更多。默认为 1, 最高为 9。
open_http2_protocol:启用 HTTP2 协议解析【默认值:false】。需要编译时启用 --enable-http2 选项
与官网相比,这里有几个配置没有讨论,比如:document_root、enable_static_handler。因为这些配置官网已明确说明,功能简易不能用于公网,所以用处不大。如果想要了解这些细节,请查看官网。
这一节的内容到这里结束,下一节我们将进入协程风格的HTTP服务器。
--------------------------- 我是可爱的分割线 ----------------------------
最后博主借地宣传一下,漳州编程小组招新了,这是一个面向漳州青少年信息学/软件设计的学习小组,有意向的同学点击链接,联系我吧。
Swoole从入门到入土(13)——HTTP服务器[配置]的更多相关文章
- Oracle数据库基础入门《一》Oracle服务器的构成
Oracle数据库基础入门<一>Oracle服务器的构成 Oracle 服务器是一个具有高性能和高可靠性面向对象关系型数据库管理系统,也是一 个高效的 SQL 语句执行环境. Oracle ...
- RocketMQ入门到入土(二)事务消息&顺序消息
接上一篇:RocketMQ入门到入土(一)新手也能看懂的原理和实战! 一.事务消息的由来 1.案例 引用官方的购物案例: 小明购买一个100元的东西,账户扣款100元的同时需要保证在下游的积分系统给小 ...
- Hexo结合Stun静态博客搭建从入门到入土
摘要 安装npm,安装hexo相关依赖,安装主题stun 修改hexo配置,修改stun配置,部署到github,gitee实现静态访问 给博客加上全局搜索,访问量统计 hexo博客编写模板 tips ...
- QT从入门到入土(一)——Qt5.14.2安装教程和VS2019环境配置
引言 24岁的某天,承载着周围人的关心,一路南下.天晴心静,听着斑马,不免对未来有些彷徨.但是呢,人生总要走陌生的路,看陌生的风景,所幸可以听着不变的歌,关心自己的人就那么多.就像是对庸常生活的一次越 ...
- QT从入门到入土(二)——对象模型(对象树)和窗口坐标体系
摘要 我们使用的标准 C++,其设计的对象模型虽然已经提供了非常高效的 RTTI 支持,但是在某些方面还是不够灵活.比如在 GUI 编程方面,既需要高效的运行效率也需要强大的灵活性,诸如删除某窗口时可 ...
- QT从入门到入土(三)——信号和槽机制
摘要 信号槽是 Qt 框架引以为豪的机制之一.所谓信号槽,实际就是观察者模式.当某个事件发生之后,比如,按钮检测到自己被点击了一下,它就会发出一个信号 (signal).这种发出是没有目的的,类似广播 ...
- QT从入门到入土(四)——多线程(QtConcurrent::run())
引言 在前面对Qt多线程(QThread)做了详细的分析:QT从入门到入土(四)--多线程(QThread) - 唯有自己强大 - 博客园 (cnblogs.com) 但是最近在做项目时候,要将一个函 ...
- ElasticSearch入门 第二篇:集群配置
这是ElasticSearch 2.4 版本系列的第二篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...
- webpack快速入门——实战技巧:webpack模块化配置
首先在根目录,新建一个webpack_config文件夹,然后新建entry_webpack.js文件,代码如下: const entry ={}; //声明entry变量 entry.path={ ...
- centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更新 第三十节课
centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更 ...
随机推荐
- linux-目录树
- [转帖]SMEMBERS:获取集合包含的所有元素
https://www.bookstack.cn/read/redisguide/spilt.4.291fab46a3b4f05c.md SMEMBERS set 以下代码展示了如何使用 SMEMBE ...
- [转帖]JMeter 接口测试快速入门
https://my.oschina.net/choerodon/blog/5289725 JMeter简介 JMeter 的特性: 对于多种协议的功能测试和性能测试 Web - HTTP, HT ...
- [转帖]Kubernetes部署Minio集群存储的选择,使用DirectPV CSI作为分布式存储的最佳实践
Kubernetes部署Minio集群存储的选择,使用DirectPV CSI作为分布式存储的最佳实践 个人理解浅谈 1. 关于在kubernetes上部署分布式存储服务,K8s存储的选择 非云环境部 ...
- [转帖]【有效解决】Edge浏览器提示你的连接不是专用连接怎么办?
https://www.xitongzhijia.net/xtjc/20230524/290887.html Win11正式版iso镜像最新(22H2新版) V2023 大小:4.22 GB类别:Wi ...
- [转帖]高并发系统中的尾延迟Tail Latency
开发和运维高并发系统的工程师可能都有过类似经验,明明系统已经调优完毕,该异步的异步,该减少互斥的地方引入无锁,该减少IO的地方更换引擎或者硬件,该调节内核的调节相应参数,然而,如果在系统中引入实时监控 ...
- 在线获取所有依赖rpm包的方法
背景 现在经常有一些不能上网的LInux机器但是需要安装一些软件. 但是有时候经常因为有依赖关系找不到的情况比较麻烦. 或者是一些公司的网络总是受限,网络速度非常慢. 下载安装非常折磨人. 这个时候就 ...
- 深度解析C#数组对象池ArrayPool<T>底层原理
提到池化技术,很多同学可能都不会感到陌生,因为无论是在我们的项目中,还是在学习的过程的过程,都会接触到池化技术.池化技术旨在提高资源的重复使用和系统性能,在.NET中包含以下几种常用的池化技术. (1 ...
- 开发QQ官方机器人
QQ 频道机器人开发简明教程 1. 简介 QQ 频道机器人是一种可以在 QQ 频道中与用户进行互动的服务.这个教程旨在帮助新手学习如何使用 Python 的官方SDK,快速实现一些基本的机器人功能. ...
- 使用Lua做为MMOARPG游戏逻辑开发脚本的一点体会
项目背景 目前在一个大型MMOARPG游戏中使用Lua做为逻辑开发语言,Lua占整体代码量的80%. 我们这个MMO游戏开发近2年,客户端8人,项目组总体人数在100人(美术占70%),目前代码量很大 ...