【修改禅道文件上传限制】

禅道 21.1 Docker 部署版:修改文件上传限制(post_max_size / upload_max_filesize)

在禅道(Zentao)Docker 部署环境中,上传大文件时经常会因为 PHP 的上传限制导致失败,比如常见的 post_max_sizeupload_max_filesize 过小。

本文把"页面级"和"服务级"两处限制一起讲清楚,并给出一套推荐参数组合。


一、准备知识:三个核心参数关系

PHP 上传限制主要看这三个参数:

  • memory_limit:PHP 脚本最大可用内存
  • post_max_size:HTTP POST 请求体最大值(一次请求总大小)
  • upload_max_filesize:单个上传文件最大值

建议始终保持:

memory_limit > post_max_size > upload_max_filesize

否则可能出现"单文件限制已调大,但仍上传失败"的情况。


二、修改页面限制(.htaccess / .ztaccess

很多部署环境会在目录级配置文件里通过 .htaccess / .ztaccess 覆盖 PHP 上传参数。

你需要先进入容器,找到这两个文件所在位置并修改。

1)进入容器

bash 复制代码
docker exec -it 83b bash

说明:83b 需要替换成你的禅道容器 ID/名称。

2)查找配置文件

bash 复制代码
find ./ -name .htaccess
find ./ -name .ztaccess

3)修改上传大小

把下面两行改成你想要的大小(示例为 100M):

我的容器进入默认就是/apps/zentao

bash 复制代码
/apps/zentao/www/.htaccess 和/apps/zentao/www/.ztaccess
vi .htaccess
vi .ztaccess
apache 复制代码
php_value post_max_size 100M
php_value upload_max_filesize 100M

三、修改服务上传限制(php.ini

如果页面级修改没有生效,或上传仍失败,则需要修改容器内的 php.ini

1)查找 php.ini

bash 复制代码
find ./ -name php.ini

常见路径示例:

/opt/zbox/etc/php/php.ini

2)修改以下参数

建议同时修改三项,并保持前面说的大小关系:

ini 复制代码
memory_limit = 512M
post_max_size = 128M
upload_max_filesize = 128M

注意:不要写错参数名,正确的是 upload_max_filesize(不要拼写成 upload_max_filessize)。

3)(可选)调整超时参数

如果遇到"大文件上传过程中超时",可以适当调整:

ini 复制代码
max_execution_time = 600
max_input_time = 600

四、重启禅道镜像使配置生效

bash 复制代码
docker restart 83b

五、验证是否生效

  1. 使用同一个接口上传一个接近你设置上限的文件
  2. 如果仍失败:
    • 检查 .htaccess / .ztaccess 是否改在实际生效的目录
    • 检查 php.ini 是否真的被加载
    • 如果你前面还有 Nginx / 网关,确认它没有额外的 client_max_body_size 限制

总结

禅道 Docker 版修改上传限制的关键是两处一起改:

  1. .htaccess / .ztaccesspost_max_sizeupload_max_filesize
  2. php.inimemory_limitpost_max_sizeupload_max_filesize
  3. 修改后必须 docker restart

按这套做完,一般就能解决上传大文件失败问题。

相关推荐
Linux运维技术栈1 个月前
禅道一键包:跨服务器迁移 + 迁移至LVM分区 实战运维笔记
运维·服务器·禅道
HetFrame2 个月前
大模型驱动的禅道任务自动化规划与创建
python·ai·自动化·大模型·ai编程·任务·禅道
♛小小小让让2 个月前
使用禅道进行测试
禅道
在线打码2 个月前
禅道二次开发:项目月报整合Dify工作流实现AI智能分析
人工智能·ai·禅道·工作流·dify
lisanmengmeng3 个月前
zentao的prod环境升级(一)
linux·运维·数据库·docker·容器·禅道
一叶轻舟随风行3 个月前
kanass全面介绍(12) - 如何自定义事项类型,满足个性化需求
jira·禅道·开源项目管理工具
一叶轻舟随风行3 个月前
kanass全面介绍(1) - 安装、配置
jira·禅道·开源项目管理工具
一叶轻舟随风行3 个月前
拒绝笨重Jira,介绍一款轻量简洁的项目管理工具-Kanass
禅道·开源项目管理工具
一叶轻舟随风行3 个月前
多款项目管理工具纵评:Jira 、bugzilla、mantis 、Kanass
jira·禅道·开源项目管理工具