当前面有 nginx 作为网络服务器时,PHP 设置 max_input_time 是否相关?
整个故事:
以访问者正在上传文件为例。nginx 网络服务器,监听 80 端口,将首先获取请求。
Nginx 本身有一个 client_header_timeout 设置,这不应该是相关的,因为文件上传是在请求正文中处理的。client_body_timeout 是最大时间量,客户端可以发送这个请求体,包含文件和其他一些 POST 数据。这个数据的大小可以通过client_max_body_size来限制,对吧?
PHP 现在等待数据。此时间受 max_input_time 限制。当它拥有所有数据时,它会检查请求主体是否超过其 post_max_size 限制,对其进行解析并检查文件是否超过 upload_max_filesize 限制。现在将执行 php 脚本,其时间不应超过 max_execution_time。
但是我的 fastcgi-proxy 什么时候加载?是在加载请求标头之后,在加载请求主体之后还是何时触发?
或者......换一种方式提出这个问题:当我使用 PHP-FPM 运行 PHP 并由 nginx 网络服务器支持时,PHP 配置 max_input_time 是否相关?当访问者带宽不好但想上传大文件时,我是否必须增加这个值,或者增加client_body_timeout的nginx设置是否足够?
如果假设不正确,请纠正我!