Commit 7b32be6eb127e6fd911f7895ed7d396529030474
1 parent
f87855ae
Exists in
spb-stable
and in
3 other branches
Explain what we know about Nginx chunked requests
Showing
1 changed file
with
14 additions
and
0 deletions
Show diff stats
lib/support/nginx/gitlab
1 | # GITLAB | 1 | # GITLAB |
2 | # Maintainer: @randx | 2 | # Maintainer: @randx |
3 | 3 | ||
4 | +# CHUNKED TRANSFER | ||
5 | +# It is a known issue that Git-over-HTTP requires chunked transfer encoding [0] which is not | ||
6 | +# supported by Nginx < 1.3.9 [1]. As a result, pushing a large object with Git (i.e. a single large file) | ||
7 | +# can lead to a 411 error. In theory you can get around this by tweaking this configuration file and | ||
8 | +# - installing an old version of Nginx with the chunkin module [2] compiled in; | ||
9 | +# - using a newer version of Nginx. | ||
10 | +# | ||
11 | +# At the time of writing we do not know if either of these theoretical solutions works. As a workaround | ||
12 | +# users can use Git over SSH to push large files. | ||
13 | +# | ||
14 | +# [0] https://git.kernel.org/cgit/git/git.git/tree/Documentation/technical/http-protocol.txt#n99 | ||
15 | +# [1] https://github.com/agentzh/chunkin-nginx-module#status | ||
16 | +# [2] https://github.com/agentzh/chunkin-nginx-module | ||
17 | + | ||
4 | upstream gitlab { | 18 | upstream gitlab { |
5 | server unix:/home/git/gitlab/tmp/sockets/gitlab.socket; | 19 | server unix:/home/git/gitlab/tmp/sockets/gitlab.socket; |
6 | } | 20 | } |