增加 PHP-FPM 的最大上传文件大小

Suv*_*sik 0 php nginx php-fpm

我在 php.ini 中增加了 params 值:

upload_max_filesize = 10M
post_max_size = 12M
Run Code Online (Sandbox Code Playgroud)

php --ini在控制台命令显示我:

post_max_size => 12M => 12M
upload_max_filesize => 10M => 10M
Run Code Online (Sandbox Code Playgroud)

但无论如何,当我尝试发送大于 1mb 的文件时,我会出错。在 nginx 日志中,我看到:

2017/06/03 12:06:40 [error] 16254#16254: *7 client intended to send too large body: 1778665 bytes
Run Code Online (Sandbox Code Playgroud)

fastcgi_param PHP_VALUE "upload_max_filesize = 10M \n post_max_size=12M" 在 nginx conf 中也没有帮助。

那么,如何增加最大上传文件大小?

Ter*_*nen 8

您需要phpinfo()通过 PHP-FPM 执行的脚本中的PHP函数检查活动的 .ini 设置。运行php --ini显示适用于命令行 PHP 的设置,这可能与 PHP-FPM 不同。

要更改 PHP-FPM php.ini 值,您需要编辑池配置文件,并添加

php_admin_value[post_max_size] = 12M
php_admin_value[upload_max_filesize] = 10M
Run Code Online (Sandbox Code Playgroud)

这些将更改应用于您正在运行的 PHP-FPM 池的 INI 设置。

或者,您可以查找php.iniPHP-FPM 设置的文件并在那里更改设置。


Kon*_*bas 7

nginx有自己的调用选项client_max_body_size,可以为httpserverlocation上下文定义。检查该选项是否设置为非零值。您可以将其设置为零以禁用体型检查,然后只有 PHP 设置变为实际。