推荐通过宝塔界面「配置修改」调整php参数,进「软件商店」→选对应php版本→「设置」→「配置修改」,改upload_max_filesize、post_max_size等并保存,宝塔自动校验语法、写入正确php.ini并重启php服务;单站需独立配置则启用user.ini(先在主php.ini设user_ini.filename=user.ini、user_ini.cache_ttl=300),再于站点根目录编辑生效。

直接在宝塔界面改,别手动编辑 php.ini 文件——除非你确认改的是当前网站所用 PHP 版本的文件,且改完重启了对应 php-fpm 服务,否则大概率白改。
用宝塔「配置修改」页面改最安全
这是唯一推荐给大多数人的路径。宝塔会校验语法、自动写入正确位置、并顺手重载 PHP,避免因拼写错误、路径错位或服务未重启导致失效。
- 进「软件商店」→ 找到你站点实际在用的 PHP 版本(比如
PHP-8.1)→ 点「设置」→ 切到「配置修改」选项卡 - 常见要调的项:
upload_max_filesize、post_max_size、memory_limit、max_execution_time,直接下拉或输入值即可 -
post_max_size必须 ≥upload_max_filesize,否则上传大文件直接 400 或空白页 - 改完点「保存」,看到「正在重启 PHP 服务」且状态变绿才算真正生效
想给单个网站单独配参数?用 user.ini
全局改会影响所有站点,而 user.ini 是 PHP 原生支持的 per-site 配置方式,但宝塔默认不启用它——必须先在主 php.ini 里打开开关。
- 先去对应 PHP 版本的「配置文件」页(不是网站设置里的),搜索
user_ini.filename,确保它是user.ini;再搜user_ini.cache_ttl,设为300 - 然后进网站根目录(如
/www/wwwroot/example.com),新建或编辑user.ini,写入类似:upload_max_filesize = 100Mpost_max_size = 120M - 注意:
user.ini不支持extension、error_log这类系统级指令,只接受运行时可变参数 - 改完不用重启,但得等缓存过期(
user_ini.cache_ttl秒)或清空 OPCache 才能立即见效
为什么改了 php.ini 还不生效?三个高频原因
不是配置写错了,而是没打通“加载链”。PHP 要读到你改的值,得同时满足:路径对、进程读、服务活。
- 执行
php -i | grep "Loaded Configuration File",确认输出的路径和你编辑的完全一致;宝塔多版本共存时,/www/server/php/80/etc/php.ini和/www/server/php/81/etc/php.ini是两份文件 - 改的是 FPM 模式下的配置,就别去动 CLI 的
php.ini(路径通常是/www/server/php/81/etc/php-cli.ini),它们互不影响 - 改完必须重启对应版本的
php-fpm,命令是service php-fpm-81 restart(数字按版本来),只重载 Nginx 或点「重载配置」没用
真正容易被忽略的是:Web 服务器层(Nginx/Apache)也会拦截大请求,upload_max_filesize 调再大,如果 Nginx 的 client_max_body_size 还卡在 1M,上传照样报 413。这属于另一层限制,得去网站配置文件里同步加。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











