直接修改对应 php sapi 的 php.ini 文件中 memory_limit 值并重启服务即可生效:1. 用 php --ini 查明 loaded configuration file 路径;2. 编辑该文件,取消 ;memory_limit = 128m 注释并设为所需值(如 512m);3. 按 sapi 类型重启服务(php8.3-fpm、apache2 等);4. 用 phpinfo() 或 php -i 验证。

直接改 php.ini 文件里的 memory_limit 就行,但要注意你用的是哪个 PHP SAPI(比如 Apache、Nginx+PHP-FPM 还是 CLI),对应配置文件路径不同,改完必须重启对应服务才生效。
确认当前生效的 php.ini 路径
在终端运行:
php --ini
看输出中的 Loaded Configuration File,例如:
Loaded Configuration File: /etc/php/8.3/fpm/php.ini这说明你当前 Web 环境走的是 PHP-FPM(常见于 Nginx),那就要编辑这个路径下的文件;如果是 /etc/php/8.3/apache2/php.ini,就对应 Apache;如果是 /etc/php/8.3/cli/php.ini,则是命令行环境。
编辑 php.ini 并修改 memory_limit
用 nano 打开对应文件(以 FPM 为例):
sudo nano /etc/php/8.3/fpm/php.ini
在文件中搜索 memory_limit(Ctrl+W 输入后回车),找到这一行:
去掉前面的分号 ;,改成你需要的值,例如:
支持单位:K(千字节)、M(兆字节)、G(吉字节),如 256M、1G,设为 -1 表示不限制(不推荐生产环境使用)。
重启对应服务使配置生效
根据你刚才确认的 SAPI 类型执行:
- 如果是 PHP-FPM(Nginx 或 Apache + FPM):
sudo systemctl restart php8.3-fpm - 如果是 Apache 模块:
sudo systemctl restart apache2 - 如果是纯 CLI 场景,不用重启,但需确保脚本运行时加载的是你改的那个 ini(可通过
php -i | grep "Loaded Configuration"验证)
验证是否生效
新建一个 info.php 文件,内容为:
<?php phpinfo(); ?>
通过浏览器或 php info.php 访问,搜索 memory_limit,确认显示值已更新。
注意:如果同时用了多个 SAPI(比如网站跑在 FPM,又用 php artisan 命令行跑任务),CLI 和 FPM 的 php.ini 是分开的,得分别检查和修改。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











