繁体   English   中英

最大文件大小未从 php.ini 生效

[英]Max filesize not taking effect from php.ini

我知道这是一个大规模的转贴,但我无法弄清楚。 服务器是使用 nginx 的 Ubuntu。

phpinfo()我看到我使用的配置文件是/etc/php/7.0/fpm/php.ini

这些是我设置的属性:

upload_max_filesize = 256M
post_max_size = 256M

我重新启动了 nginx,以及php7.0-fpm进程,最大上传大小仍然没有改变。

我正在使用 wordpress,所以作为最后的手段,我什至尝试使用一个插件来增加最大上传大小,但即使这样也没有用。

我也尝试在我的 .htaccess 中设置它,但仍然没有:

php_value post_max_size 256M
php_value uploads_max_filesize 256M

我在这里找到的答案:

您是否尝试将 php.ini 放在 /etc/php5/fpm/php.ini 下? 如果我正确理解 php5-fpm,这通常是 php 读取的默认位置。

几件事。

当您提到您的服务器使用 nginx 时,不需要使用 .htaccess 文件,因为这些文件用于 Apache 服务器。

话虽如此,我会尝试一些事情。

你知道你的php实例的ini文件是什么吗?

您提到了 php 7,但您也可以安装 php 5。

如果您转到控制台并输入“php --ini”,则加载的配置文件是什么?

一旦你知道,使用 vi / vim 或你选择的编辑器,你可以设置:

upload_max_filesize = 100M
post_max_size = 100M

现在,考虑到您必须重新启动服务,包括 php 和 nginx:

对于 php 5:

service php5-fpm reload

对于 php 7:

service php7-fpm reload

对于 Nginx:

service nginx reload

也尝试打印当前值:

$uploadMaxFilesize = ini_get('upload_max_filesize');
$postMaxSize = ini_get('post_max_size');

另外,由于这是针对 WordPress 的,您是否尝试在 WordPress 管理设置中进行设置?

管理仪表板 > 设置 > 上传设置

默认情况下,NGINX 对文件上传的限制为 1MB。 要更改此设置,您需要设置 client_max_body_size 变量。 您可以在 nginx.conf 的 http 块中执行此操作

http {
    #...
        client_max_body_size 100m;
        client_body_timeout 120s; # Default is 60, May need to be increased for very large uploads
    #...
}

如果您希望上传上传时间超过 60 秒的非常大的文件,您还需要添加具有大值的client_body_timeout变量

更新 NGINX 配置后,不要忘记重新启动 NGINX。

您需要重新启动 nginx 和 php 以重新加载配置。 这可以使用以下命令完成;

sudo service nginx restart
sudo service php7.0-fpm restart

注意:如果您不必托管多个网站,只需将其添加到服务器块

server {
    client_max_body_size 8M;
}

有几件事我必须改变才能让它为我工作。

首先从这里的用户 NID ,将其添加到您的/etc/nginx/nginx.conf文件(在 http 块内):

http {
    #...
        client_max_body_size 100m;
        client_body_timeout 120s; # Default is 60, May need to be increased for very large uploads
    #...
}

然后,我也只好跟着类似于用户只需鲁迪的东西在这里

编辑您的php.ini文件 - 与许多指南相反,对我来说,它不在我的 wordpress 根文件夹中,而是位于/etc/php/7.2/fpm/php.ini

upload_max_filesizepost_max_size应该有一些预定义的值。 将这些更改为您想要的。

重启 nginx 和 php-fpm:

sudo systemctl reload nginx
sudo systemctl restart php7.2-fpm

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM