SVN大文件提交失败(超1059MB),需调整服务器哪些配置?
SVN提交大文件(>1GB)失败的服务器端配置修改方案
报错信息
Error: Commit failed (details follow): Error: While preparing 'C:\IT-TEST\FILE.iso' for commit Error: PUT request on '/test-repo/!svn/txr/6581-57h/IT-TEST/FILE.iso' failed
该错误在使用TortoiseSVN提交超过1059~1060MB的文件到Oracle Linux部署的SVN+HTTPd仓库时触发。
服务器端需要修改的配置
1. 调整HTTPd的请求大小与超时限制
编辑HTTPd主配置文件(/etc/httpd/conf/httpd.conf)或对应虚拟主机配置文件,添加/修改以下指令:
- 设置最大请求体大小(单位:字节,示例为1200MB,可根据需求调整):
若为虚拟主机部署,需将该指令放在LimitRequestBody 1258291200<VirtualHost>块内;全局配置则放在文件合适位置。 - 调整请求超时参数(避免大文件上传因超时中断):
其中RequestReadTimeout header=20-40,MinRate=500 body=300,MinRate=1000body=300表示允许请求体传输的最长时间为300秒(5分钟),可根据网络带宽适当延长。
2. 修改SVN Apache模块的最大POST限制
编辑SVN配置文件(通常为/etc/httpd/conf.d/subversion.conf),找到对应仓库的<Location /test-repo>块,添加或调整:
SVNMaxPostSize 1258291200
该值需与LimitRequestBody保持一致或更大,确保SVN能接收完整的大文件请求。
3. 检查SELinux限制(可选)
Oracle Linux默认开启SELinux,若上述配置生效后仍报错,可临时关闭SELinux测试:
setenforce 0
若测试有效,可修改/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=permissive以永久生效,或添加SELinux规则允许HTTPd处理大文件上传。
4. 重启HTTPd服务
修改配置后执行以下命令使设置生效:
systemctl restart httpd
内容的提问来源于stack exchange,提问作者No_Bullet_4_ME
相关产品推荐
相关产品推荐

