温馨提示×

CentOS怎么设置PHP内存

小樊
40
2026-07-19 11:11:38
栏目: 编程语言

在 CentOS 上设置 PHP 内存,通常是指修改 PHP 允许使用的最大内存限制(memory_limit)。下面按常见场景给你说明。


一、找到 php.ini 文件

先确认你用的是哪个 PHP 版本,以及 php.ini 的位置。

php -i | grep "Loaded Configuration File"

常见路径示例:

  • CentOS 7 / 8(Remi PHP):
    • /etc/php.ini
    • /etc/php/7.4/cli/php.ini
    • /etc/php/8.1/fpm/php.ini

注意

  • CLIFPM 是两套配置,改错不会生效。

二、修改 PHP 内存限制

1️⃣ 编辑 php.ini

vim /etc/php.ini

或(示例 PHP 8.1 FPM):

vim /etc/php/8.1/fpm/php.ini

2️⃣ 修改 memory_limit

找到这一行:

memory_limit = 128M

改成你需要的,例如:

memory_limit = 512M

或:

memory_limit = 1024M

✅ 支持单位:

  • M(MB)
  • G(GB)
  • -1(不限制,不推荐

三、重启 PHP 服务

✅ PHP-FPM(最常见)

systemctl restart php-fpm

如果是具体版本:

systemctl restart php74-php-fpm
systemctl restart php81-php-fpm

✅ Apache + mod_php

systemctl restart httpd

✅ Nginx + PHP-FPM

systemctl restart nginx
systemctl restart php-fpm

四、验证是否生效

命令行验证:

php -i | grep memory_limit

网页验证(推荐)

新建 info.php

<?php
phpinfo();

访问后搜索:

memory_limit

五、只针对某个项目 / 虚拟主机设置(可选)

1️⃣ 在 PHP 文件中设置(不推荐长期使用)

ini_set('memory_limit', '512M');

2️⃣ Nginx + FPM(推荐)

php-fpm.d/www.conf 或对应 pool 中:

php_admin_value[memory_limit] = 512M

然后重启:

systemctl restart php-fpm

六、常见问题

❓ 改了不生效?

  • 改错 php.ini(CLI / FPM 不一致)
  • 没重启 PHP-FPM
  • php_admin_value 覆盖

❓ 内存设多大合适?

  • 普通网站:256M
  • Laravel / WordPress:512M
  • 数据处理:1024M+

如果你愿意,可以告诉我:

  • ✅ CentOS 版本
  • ✅ PHP 版本
  • ✅ Apache / Nginx
  • ✅ 是网站还是命令行脚本

我可以给你精确到命令级别的配置方案。

0