在`php.ini`中更改值在Nginx中不生效

e4yzc0pl  于 2023-05-21  发布在  PHP
关注(0)|答案(3)|浏览(211)

我使用Easyengine的WordPress网站,我需要上传一个大文件到服务器,我知道我可以使用FTP / SSH这样做,但从长远来看,我需要通过PHP来完成,我看到的当前上传限制是100M当做phpinfo();
安装程序使用PHP 7,我找到的PHP INI文件位于
etc/php/7.2/php.ini
我对这些部分进行了修改:

upload_max_filesize = 2100M
post_max_size = 2100M

但即使在此之后,上传限制是100 M,因为我可以看到两个WordPress插件页面,我正在使用以及与phpinfo()
我在某个地方读到Nginx需要重新启动,所以我做了ee site restart example.com,Nginx和PHP都重新启动了,仍然没有效果。
一些文章建议在/etc/nginx/nginx.conf中添加一个规则,但不幸的是,该路径甚至不存在,所以我在该路径下创建了该文件并尝试了,但仍然没有用。

093gszye

093gszye1#

要解决您的问题,我将采取以下步骤:
1.检查您的php.ini路径以检查您是否正在编辑正确的路径
要查找您的php.ini,请在webroot中创建一个名为info.php或任何其他名称的文件,并添加以下内容:

<?php phpinfo();

现在,转到您的浏览器并访问:http:///test.php.在结果页面上搜索:

Configuration File (php.ini) Path

这将显示您的php.ini位置
1.检查PHP脚本是否没有使用ini_set()覆盖您的设置
1.检查您的设置是否没有覆盖您的pool.d fpm配置文件。

在大多数配置中,它位于

/etc/php/*/fpm/pool.d/www.conf
1.确保重新启动php-fpmnginx

这样做

sudo /etc/init.d/php-fpm restart sudo /etc/init.d/nginx restart

yeotifhr

yeotifhr2#

我也遇到过这样的问题。我正在编辑错误的文件位于/etc/php/8.0/cli/php. ini而不是正确的一个。因为nginx使用php-fpm版本。所以正确的文件是**/etc/php/8.0/fpm/php.ini**
不要忘记使用sudo pkill php-fpm 8.0命令杀死当前的fpm进程。然后键入sudo service php8.0-fpm以正常启动服务。

kcwpcxri

kcwpcxri3#

php.ini的正确语法是post_max_size = 30M,但我写为post_max_size: 30M。这花了我一整天的时间。
另外,在phpinfo()中,有Additional .ini files parsed。我是PHP的新手,但这些文件似乎按它们列出的顺序覆盖了php.ini。因此,我在同一目录中创建了一个99-php.ini文件,确保它是列表中的最后一个。
另外,不要忘记重新启动php-fpm。在我的例子中,我使用ubuntu,所以我运行sudo systemctl restart php8.1-fpm
希望这可以保存一些人的时间。

相关问题