GET/POST请求的最大尺寸

这是因为Chrome浏览器会自动请求一次favorite.ico,所以服务器会收到2个Request,通过打印$req->server['request_uri'] 能看到请求的URL路径。

GET请求最大8192

GET请求只有一个Http头,swoole底层使用固定大小的内存缓存区8K,并且不可修改。如果请求不是正确的Http请求,将会出现错误。底层会抛出以下错误:

WARN swReactorThread_onReceive_http_request: http header is too long.

POST/文件上传

最大尺寸受到 package_max_length 配置项限制,默认为2M, 可以调用swoole_server->set传入新的值修改尺寸。 swoole底层是全内存的,因此如果设置过大可能会导致大量并发请求将服务器资源耗尽。 计算方法:最大内存占用 = 最大并发请求数 * package_max_length