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服务器。

 

 

---------------------------  我是可爱的分割线  ----------------------------

最后博主借地宣传一下,漳州编程小组招新了,这是一个面向漳州青少年信息学/软件设计的学习小组,有意向的同学点击链接,联系我吧。

 

posted on 2020-10-16 10:40  咚..咚  阅读(317)  评论(0编辑  收藏  举报

导航