What causes svn error 413 Request Entity Too Large

2019-01-07 12:49发布

On occasion I receive an error "413 Request Entity Too Large" while updating an svn repository. Once I receive this error, it continues every time I attempt to update the local working copy. A new checkout will solve the problem, but is very inconvenient. The project is over 30 GB, and the SVN repository is hosted externally.

This has occurred in the past on several different computers, including Windows development machines, and our Linux build server.

Most of what I have found regarding this issue relates to large individual files (over 2GB). This is not the case here, as the largest files are approx. 50-60 MB.

Has anyone else ran into this before and/or know the cause/solution to this?

标签: svn
6条回答
等我变得足够好
2楼-- · 2019-01-07 13:17

I had this issue recently with any file over 10MB. It turns out I forgot I'm proxying the svn/apache server with nginx. Changing client_max_body_size in nginx.conf fixed the issue. I left LimitXMLRequestBody and LimitRequestBody on the Apache server at their defaults.

查看更多
做自己的国王
3楼-- · 2019-01-07 13:19

Also, if you run mod_security, consider checking your SecRequestBodyLimit setting. Mine was set too low and was causing the problem.

查看更多
Fickle 薄情
4楼-- · 2019-01-07 13:24

See also: RequestReadTimeout, which limits time to read headers and body http://httpd.apache.org/docs/2.2/mod/mod_reqtimeout.html

查看更多
劳资没心,怎么记你
5楼-- · 2019-01-07 13:26

Try to add the following configuration directives to your Apache configuration file:

LimitXMLRequestBody 8000000
LimitRequestBody 0
查看更多
倾城 Initia
6楼-- · 2019-01-07 13:34

I don't have access to my repo server (IT Managed, and its over the weekend). So what I found was that I could work around this issue by doing an svn update on subdirs until one wouldn't work. Then I descended into this dir until I stopped getting the 413 error. Then I could do an update at higher levels. Might not work for everyone but could help get through in an emergency

查看更多
成全新的幸福
7楼-- · 2019-01-07 13:34

Made a short bash script to loop through the subdirectories, per mdh's answer:

for dir in *; do
    [[ -e $dir ]] || continue
    echo "Updating $dir"
    svn up $dir
done
svn up
查看更多
登录 后发表回答