You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Ubuntu 22的LAMP环境中提升PHP文件上传大小限制

在Ubuntu 22.04 LAMP环境中修改PHP上传文件大小限制

1. 定位正确的php.ini文件

Ubuntu下LAMP栈的Apache模块PHP和CLI PHP用的是不同的php.ini,你需要找到Apache实际加载的那个:

  • 执行命令直接查询路径:
    php -i | grep "Loaded Configuration File"
    
    或者创建一个临时PHP文件(比如info.php)放到网站根目录,内容为:
    <?php phpinfo(); ?>
    
    访问该文件后,搜索Loaded Configuration File,就能看到Apache对应的php.ini路径(通常是/etc/php/[版本号]/apache2/php.ini,比如PHP 8.1就是/etc/php/8.1/apache2/php.ini)。

2. 修改上传相关配置参数

用文本编辑器(比如nano)打开找到的php.ini:

sudo nano /etc/php/8.1/apache2/php.ini

找到以下参数,修改为你需要的值(示例设置为允许20MB单文件上传):

  • upload_max_filesize = 20M:单个上传文件的最大大小
  • post_max_size = 25M:整个POST请求的总大小(必须大于upload_max_filesize,因为POST还包含其他表单数据)
  • memory_limit = 128M(可选):确保PHP有足够内存处理大文件
  • max_execution_time = 300(可选):延长脚本执行时间,避免大文件上传超时

修改后按Ctrl+O保存,Ctrl+X退出编辑器。

3. 重启服务使修改生效

sudo systemctl restart apache2

如果你的环境用的是PHP-FPM代替mod_php(部分LAMP配置会这么做),还需要额外重启PHP-FPM服务:

sudo systemctl restart php8.1-fpm

4. 验证修改是否生效

再次访问之前创建的info.php,搜索upload_max_filesize、post_max_size等参数,确认值已经更新。或者用命令行检查CLI的配置(如果需要的话):

php -i | grep upload_max_filesize

额外注意事项

  • 如果你的网站配置了虚拟主机,检查虚拟主机文件中是否有php_value指令(比如php_value upload_max_filesize 10M),这类配置会覆盖php.ini中的全局设置,需要同步修改或删除。
  • 确保服务器的文件系统有足够空间存放上传的大文件,同时Apache的临时目录(默认是/tmp)有足够权限和空间。

内容的提问来源于stack exchange,提问作者adwivedi008

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 16:55:19