简介:
Http\Server
对 HTTP
协议的支持并不完整,一定要作为应用服务器处理动态请求。并且在前端增加 Nginx
作为代理
Http\Server
继承自 Server,所以 Server
提供的所有 API
和配置项都可以使用,进程模型也是一致的
简单例子:
$http = new Swoole\Http\Server("127.0.0.1", 9501); $http->on('request', function ($request, $response) {$response->end("<h1>Hello Swoole. #".rand(1000, 9999)."</h1>"); }); $http->start();
server {root /data/wwwroot/;server_name local.swoole.com; ?location / {proxy_http_version 1.1;proxy_set_header Connection "keep-alive";proxy_set_header X-Real-IP $remote_addr;if (!-e $request_filename) {proxy_pass http://127.0.0.1:9501;}} }
-
on()
注册时间回调函数,
-
start()
启动HTTP服务
-
getContent()
获取原始的POST包体
-
getData()
获取完整的原始
Http
请求报文。包括Http Header
和Http Body
-
header()
设置 HTTP 响应的 Header 信息
-
trailer()
将
Header
信息附加到HTTP
响应的末尾,仅在HTTP2
中可用,用于消息完整性检查,数字签名等。 -
cookie()
设置
HTTP
响应的cookie
信息。此方法参数与PHP
的setcookie
完全一致。 -
rawCookie()
设置
HTTP
响应的cookie
信息 -
redirect()
发送
Http
跳转。调用此方法会自动end
发送并结束响应。 -
write()
启用
Http Chunk
分段向浏览器发送相应内容。 -
sendfile()
发送文件到浏览器。
相关函数
nginx+swoole 配置