diff --git a/libavformat/http.c b/libavformat/http.c
index d5c02ddce0fb7e4de4ec683c273fac795608974c..83ffc0b60e1dc0ff1bd51c0813e0440b0ea893a8 100644
--- a/libavformat/http.c
+++ b/libavformat/http.c
@@ -317,7 +317,7 @@ static int http_connect(URLContext *h, const char *path, const char *hoststr,
     if (!has_header(s->headers, "\r\nAccept: "))
         len += av_strlcpy(headers + len, "Accept: */*\r\n",
                           sizeof(headers) - len);
-    if (!has_header(s->headers, "\r\nRange: "))
+    if (!has_header(s->headers, "\r\nRange: ") && !post)
         len += av_strlcatf(headers + len, sizeof(headers) - len,
                            "Range: bytes=%"PRId64"-\r\n", s->off);
     if (!has_header(s->headers, "\r\nConnection: "))