php.ini 中的更改未反映 PHP Memory_Limit 主值

php.ini 中的更改未反映 PHP Memory_Limit 主值

我正在尝试安装一个用于 AWS S3 集成的 Composer 包,但遇到了 Composer 内存不足的问题。

检查 phpinfo() 后,我可以看到加载的 php 配置文件是 /etc/php.ini,分配的最大内存限制为 256M

但在检查文件时,分配的 memory_limit 为 128M。我尝试更改它,然后重新启动服务器。但无论我做什么,主值仍然为 256M。

我能够使用 .htaccess 在本地更改值,但不幸的是它不适用于 Composer。

加载配置文件

php.ini 值

答案1

您可以使用 find 命令搜索 PHP memory_limit 设置的其他实例。
例如:

find /etc -type f -exec grep -H 'memory_limit' {} \;

这将搜索 /etc 中提及 memory_limit 的所有文件(递归)。

需要注意的是:作曲家网站建议的值高达 2gb。
https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors

答案2

我刚刚遇到了与 apache 和 php 类似的问题。我的变量在正确的 php.ini 文件中设置正确,并且我重新启动了 apache 服务,但 php 的值直到我重新启动整个服务器才改变。原来我运行的是 php-fpm,它是它自己的服务(而不是作为 apache“模块”运行的 php),需要重新启动的是该服务,而不是 apache 服务。类似systemctl restart php-fpm或对我而言systemctl restart php8.3-fpm可能有帮助

相关内容