<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel>
        <title>http-server-close and HTTP uploads/content-length header</title>
        <description> Hi all,

Was hoping someone could help shed some light on an issue we're observing in our setup. When we have &amp;quot;option http-server-close&amp;quot; set, then file uploads via multipart form data will not work. By &amp;quot;not work&amp;quot; I mean that the HTTP content-length header will be reported as 0, which in turn causes the final destination to get seriously confused by the request and then give up. I realize this sounds strange, as content-length is reported by the client but this is the behavior I'm witnessing. When I have http-server-close on, the content-length is 0, and when I remove the option the content-length is as expected — with no changes on the client end.

Additionally, if we set &amp;quot;option httpclose&amp;quot; then everything will work. However, I'm under the impression that using httpclose isn't ideal since clients then wouldn't be able to send multiple HTTP requests across the same connection. Since this is a mobile app, having that functionality would enhance performance. Setting http-server-close seems to be ideal because we can correctly load balance multiple requests in the same session.

So,  I'm wondering:

 *   Does haproxy do anything to validate/calculate the content-length header?
 *   How would the presence of http-server-close affect the request's content-length header?

At a high level, our request flow looks like this:

stunnel -&amp;gt; haproxy -&amp;gt; apache -&amp;gt; passenger

Where stunnel and haproxy are on the same machine, and apache/passenger are on three or four additional machines.

Here's the relevant snippet from haproxy.cfg:

defaults
    mode                    http
    log                     global
    option                  dontlognull
    option                  redispatch
    retries                 3
    timeout http-request    10s
    timeout queue           1m
    timeout connect         10s
    timeout client          1m
    timeout server          1m
    timeout http-keep-alive 500
    timeout check           10s
    maxconn                 3000

# Stunnel listens on 443 and forwards connections off to haproxy on 81
frontend https *:81
    option httplog
    # Enabling http-server-close will cause file uploads to fail!
    # option http-server-close
    option forwardfor except 127.0.0.0/8

    reqadd X-Forwarded-Proto:\ https

    # set some ACLS…
    # choose a backend…
    # Nothing else really special

And here is a session log for each case, starting with the normal operation (no http-server-close set, or setting httpclose):

00000020:https.accept(0006)=000a from [10.0.1.30:43419]
00000020:https.clireq[000a:ffff]: POST /URL-GOES-HERE HTTP/1.1
00000020:https.clihdr[000a:ffff]: Host: dev.sermo.com
00000020:https.clihdr[000a:ffff]: Content-Type: multipart/form-data; charset=utf-8; boundary=0xKhTmLbOuNdArY
00000020:https.clihdr[000a:ffff]: User-Agent: iPhone Simulator; iPhone OS 4..3.2; en_US
00000020:https.clihdr[000a:ffff]: Accept-Encoding: gzip
00000020:https.clihdr[000a:ffff]: Content-Length: 62528
00000020:https.clihdr[000a:ffff]: Connection: keep-alive

And here is with nothing else changed except for the addition of the http-server-close option:

00000007:https.accept(0006)=000a from [10.0.1.30:43688]
00000007:https.clireq[000a:ffff]: POST /URL-GOES-HERE HTTP/1.1
00000007:https.clihdr[000a:ffff]: Host: dev.sermo.com
00000007:https.clihdr[000a:ffff]: Content-Type: multipart/form-data; charset=utf-8; boundary=0xKhTmLbOuNdArY
00000007:https.clihdr[000a:ffff]: User-Agent: iPhone Simulator; iPhone OS 4..3.2; en_US
00000007:https.clihdr[000a:ffff]: Accept-Encoding: gzip
00000007:https.clihdr[000a:ffff]: Content-Length: 0
00000007:https.clihdr[000a:ffff]: Connection: keep-alive

We can get the system to work if instead of setting http-server-close, we set httpclose but like I explained above this doesn't seem to be ideal.

Any help or pointers would be appreciated!

Thanks,
rg</description>
        <link>http://www.serverphorums.com/read.php?10,468583,468583#msg-468583</link>
        <lastBuildDate>Mon, 20 May 2013 02:23:49 +0200</lastBuildDate>
        <generator>Phorum 5.2.18</generator>
        <item>
            <guid>http://www.serverphorums.com/read.php?10,468583,469802#msg-469802</guid>
            <title>Re: http-server-close and HTTP uploads/content-length header</title>
            <link>http://www.serverphorums.com/read.php?10,468583,469802#msg-469802</link>
            <description><![CDATA[ On Wed, Mar 28, 2012 at 09:06:33AM -0500, Rusty Geldmacher wrote:<br />
&gt; Hi Willy,<br />
&gt; <br />
&gt; Thanks so much for your responses! We're using version 1.4.19. I'll work<br />
&gt; on getting a network capture for you -- what tcpdump params would help the<br />
&gt; most? I usually use &quot;-vv -A -w &lt;file&gt;&quot;. Probably the most helpful thing<br />
&gt; would be to dump port 81, which is the unencrypted traffic coming it<br />
&gt; HAProxy from stunnel.<br />
<br />
Yes it should be enough. Flags you should use are &quot;-s0 -w &lt;file&gt;&quot; so that<br />
we get complete packets to see where data is missing or mangled. I also<br />
need the data between haproxy and the server to compare the damage that<br />
haproxy might have done there. And if you can offer me the haproxy logs<br />
at the same time it would be wonderful :-)<br />
<br />
Thank you!<br />
Willy]]></description>
            <dc:creator>Willy Tarreau</dc:creator>
            <category>HAProxy</category>
            <pubDate>Wed, 28 Mar 2012 22:00:01 +0200</pubDate>
        </item>
        <item>
            <guid>http://www.serverphorums.com/read.php?10,468583,469617#msg-469617</guid>
            <title>Re: http-server-close and HTTP uploads/content-length header</title>
            <link>http://www.serverphorums.com/read.php?10,468583,469617#msg-469617</link>
            <description><![CDATA[ Hi Willy,<br />
<br />
Thanks so much for your responses! We're using version 1.4.19. I'll work<br />
on getting a network capture for you -- what tcpdump params would help the<br />
most? I usually use &quot;-vv -A -w &lt;file&gt;&quot;. Probably the most helpful thing<br />
would be to dump port 81, which is the unencrypted traffic coming it<br />
HAProxy from stunnel.<br />
<br />
Thanks again,<br />
rusty<br />
<br />
On 3/27/12 2:21 PM, &quot;Willy Tarreau&quot; &lt;w@1wt.eu&gt; wrote:<br />
<br />
&gt;Hi Rusty,<br />
&gt;<br />
&gt;On Mon, Mar 26, 2012 at 02:07:40PM -0500, Rusty Geldmacher wrote:<br />
&gt;&gt; Hi all,<br />
&gt;&gt; <br />
&gt;&gt; Was hoping someone could help shed some light on an issue we're<br />
&gt;&gt;observing in<br />
&gt;&gt; our setup. When we have &quot;option http-server-close&quot; set, then file<br />
&gt;&gt;uploads via<br />
&gt;&gt; multipart form data will not work. By &quot;not work&quot; I mean that the HTTP<br />
&gt;&gt; content-length header will be reported as 0, which in turn causes the<br />
&gt;&gt;final<br />
&gt;&gt; destination to get seriously confused by the request and then give up. I<br />
&gt;&gt; realize this sounds strange, as content-length is reported by the<br />
&gt;&gt;client but<br />
&gt;&gt; this is the behavior I'm witnessing. When I have http-server-close on,<br />
&gt;&gt;the<br />
&gt;&gt; content-length is 0, and when I remove the option the content-length is<br />
&gt;&gt;as<br />
&gt;&gt; expected ? with no changes on the client end.<br />
&gt;<br />
&gt;That's strange indeed. What version is this, so that we can check the<br />
&gt;changelog if any known bug might have had that side effect ?<br />
&gt;<br />
&gt;&gt; Additionally, if we set &quot;option httpclose&quot; then everything will work.<br />
&gt;<br />
&gt;I'm not surprized, &quot;option httpclose&quot; only adjusts the Connection header<br />
&gt;and completely ignores framing. It's what we call the tunnel mode : both<br />
&gt;sides are free to exchange what they want past the headers.<br />
&gt;<br />
&gt;&gt; However, I'm under the impression that using httpclose isn't ideal since<br />
&gt;&gt; clients then wouldn't be able to send multiple HTTP requests across the<br />
&gt;&gt;same<br />
&gt;&gt; connection.<br />
&gt;<br />
&gt;You're right.<br />
&gt;<br />
&gt;&gt; Since this is a mobile app, having that functionality would<br />
&gt;&gt; enhance performance.<br />
&gt;<br />
&gt;For sure !<br />
&gt;<br />
&gt;&gt; Setting http-server-close seems to be ideal because we<br />
&gt;&gt; can correctly load balance multiple requests in the same session.<br />
&gt;<br />
&gt;Yes and it was designed exactly for this.<br />
&gt;<br />
&gt;&gt; So,  I'm wondering:<br />
&gt;&gt; <br />
&gt;&gt;  *   Does haproxy do anything to validate/calculate the content-length<br />
&gt;&gt;header?<br />
&gt;<br />
&gt;Yes, it parses the Content-length header or alternatively considers the<br />
&gt;Transfer-Encoding if it's present and announced as &quot;chunked&quot;.<br />
&gt;<br />
&gt;&gt;  *   How would the presence of http-server-close affect the request's<br />
&gt;&gt;content-length header?<br />
&gt;<br />
&gt;It only checks the header and should not mangle it. Well, there is only<br />
&gt;one<br />
&gt;case it changes it, it's when multiple similar content-length headers are<br />
&gt;sent, then it reduces them to only one.<br />
&gt;<br />
&gt;&gt; At a high level, our request flow looks like this:<br />
&gt;&gt; <br />
&gt;&gt; stunnel -&gt; haproxy -&gt; apache -&gt; passenger<br />
&gt;&gt; <br />
&gt;&gt; Where stunnel and haproxy are on the same machine, and apache/passenger<br />
&gt;&gt;are<br />
&gt;&gt; on three or four additional machines.<br />
&gt;&gt; <br />
&gt;&gt; Here's the relevant snippet from haproxy.cfg:<br />
&gt;&gt; <br />
&gt;&gt; defaults<br />
&gt;&gt;     mode                    http<br />
&gt;&gt;     log                     global<br />
&gt;&gt;     option                  dontlognull<br />
&gt;&gt;     option                  redispatch<br />
&gt;&gt;     retries                 3<br />
&gt;&gt;     timeout http-request    10s<br />
&gt;&gt;     timeout queue           1m<br />
&gt;&gt;     timeout connect         10s<br />
&gt;&gt;     timeout client          1m<br />
&gt;&gt;     timeout server          1m<br />
&gt;&gt;     timeout http-keep-alive 500<br />
&gt;&gt;     timeout check           10s<br />
&gt;&gt;     maxconn                 3000<br />
&gt;&gt; <br />
&gt;&gt; # Stunnel listens on 443 and forwards connections off to haproxy on 81<br />
&gt;&gt; frontend https *:81<br />
&gt;&gt;     option httplog<br />
&gt;&gt;     # Enabling http-server-close will cause file uploads to fail!<br />
&gt;&gt;     # option http-server-close<br />
&gt;&gt;     option forwardfor except 127.0.0.0/8<br />
&gt;&gt; <br />
&gt;&gt;     reqadd X-Forwarded-Proto:\ https<br />
&gt;&gt; <br />
&gt;&gt;     # set some ACLS?<br />
&gt;&gt;     # choose a backend?<br />
&gt;&gt;     # Nothing else really special<br />
&gt;<br />
&gt;Nothing fancy here !<br />
&gt;<br />
&gt;&gt; And here is a session log for each case, starting with the normal<br />
&gt;&gt;operation<br />
&gt;&gt; (no http-server-close set, or setting httpclose):<br />
&gt;&gt; <br />
&gt;&gt; 00000020:https.accept(0006)=000a from [10.0.1.30:43419]<br />
&gt;&gt; 00000020:https.clireq[000a:ffff]: POST /URL-GOES-HERE HTTP/1.1<br />
&gt;&gt; 00000020:https.clihdr[000a:ffff]: Host: dev.sermo.com<br />
&gt;&gt; 00000020:https.clihdr[000a:ffff]: Content-Type: multipart/form-data;<br />
&gt;&gt;charset=utf-8; boundary=0xKhTmLbOuNdArY<br />
&gt;&gt; 00000020:https.clihdr[000a:ffff]: User-Agent: iPhone Simulator; iPhone<br />
&gt;&gt;OS 4.3.2; en_US<br />
&gt;&gt; 00000020:https.clihdr[000a:ffff]: Accept-Encoding: gzip<br />
&gt;&gt; 00000020:https.clihdr[000a:ffff]: Content-Length: 62528<br />
&gt;&gt; 00000020:https.clihdr[000a:ffff]: Connection: keep-alive<br />
&gt;&gt; <br />
&gt;&gt; And here is with nothing else changed except for the addition of the<br />
&gt;&gt; http-server-close option:<br />
&gt;&gt; <br />
&gt;&gt; 00000007:https.accept(0006)=000a from [10.0.1.30:43688]<br />
&gt;&gt; 00000007:https.clireq[000a:ffff]: POST /URL-GOES-HERE HTTP/1.1<br />
&gt;&gt; 00000007:https.clihdr[000a:ffff]: Host: dev.sermo.com<br />
&gt;&gt; 00000007:https.clihdr[000a:ffff]: Content-Type: multipart/form-data;<br />
&gt;&gt;charset=utf-8; boundary=0xKhTmLbOuNdArY<br />
&gt;&gt; 00000007:https.clihdr[000a:ffff]: User-Agent: iPhone Simulator; iPhone<br />
&gt;&gt;OS 4.3.2; en_US<br />
&gt;&gt; 00000007:https.clihdr[000a:ffff]: Accept-Encoding: gzip<br />
&gt;&gt; 00000007:https.clihdr[000a:ffff]: Content-Length: 0<br />
&gt;&gt; 00000007:https.clihdr[000a:ffff]: Connection: keep-alive<br />
&gt;<br />
&gt;Wow this is amazing !<br />
&gt;I've never seen that and don't understand how that may happen. I'm relly<br />
&gt;interested in knowing your version to try to reproduce.<br />
&gt;<br />
&gt;&gt; We can get the system to work if instead of setting http-server-close,<br />
&gt;&gt;we set<br />
&gt;&gt; httpclose but like I explained above this doesn't seem to be ideal.<br />
&gt;<br />
&gt;I agree this is not a good solution, we need to fix this.<br />
&gt;<br />
&gt;If you could get a network capture for each side too, that would help<br />
&gt;a lot.  Don't post it to the list if there are sensible information there.<br />
&gt;<br />
&gt;Regards,<br />
&gt;Willy<br />
&gt;]]></description>
            <dc:creator>Rusty Geldmacher</dc:creator>
            <category>HAProxy</category>
            <pubDate>Wed, 28 Mar 2012 16:10:02 +0200</pubDate>
        </item>
        <item>
            <guid>http://www.serverphorums.com/read.php?10,468583,469102#msg-469102</guid>
            <title>Re: http-server-close and HTTP uploads/content-length header</title>
            <link>http://www.serverphorums.com/read.php?10,468583,469102#msg-469102</link>
            <description><![CDATA[ Hi Rusty,<br />
<br />
On Mon, Mar 26, 2012 at 02:07:40PM -0500, Rusty Geldmacher wrote:<br />
&gt; Hi all,<br />
&gt; <br />
&gt; Was hoping someone could help shed some light on an issue we're observing in<br />
&gt; our setup. When we have &quot;option http-server-close&quot; set, then file uploads via<br />
&gt; multipart form data will not work. By &quot;not work&quot; I mean that the HTTP<br />
&gt; content-length header will be reported as 0, which in turn causes the final<br />
&gt; destination to get seriously confused by the request and then give up. I<br />
&gt; realize this sounds strange, as content-length is reported by the client but<br />
&gt; this is the behavior I'm witnessing. When I have http-server-close on, the<br />
&gt; content-length is 0, and when I remove the option the content-length is as<br />
&gt; expected ? with no changes on the client end.<br />
<br />
That's strange indeed. What version is this, so that we can check the<br />
changelog if any known bug might have had that side effect ?<br />
<br />
&gt; Additionally, if we set &quot;option httpclose&quot; then everything will work.<br />
<br />
I'm not surprized, &quot;option httpclose&quot; only adjusts the Connection header<br />
and completely ignores framing. It's what we call the tunnel mode : both<br />
sides are free to exchange what they want past the headers.<br />
<br />
&gt; However, I'm under the impression that using httpclose isn't ideal since<br />
&gt; clients then wouldn't be able to send multiple HTTP requests across the same<br />
&gt; connection.<br />
<br />
You're right.<br />
<br />
&gt; Since this is a mobile app, having that functionality would<br />
&gt; enhance performance.<br />
<br />
For sure !<br />
<br />
&gt; Setting http-server-close seems to be ideal because we<br />
&gt; can correctly load balance multiple requests in the same session.<br />
<br />
Yes and it was designed exactly for this.<br />
<br />
&gt; So,  I'm wondering:<br />
&gt; <br />
&gt;  *   Does haproxy do anything to validate/calculate the content-length header?<br />
<br />
Yes, it parses the Content-length header or alternatively considers the<br />
Transfer-Encoding if it's present and announced as &quot;chunked&quot;.<br />
<br />
&gt;  *   How would the presence of http-server-close affect the request's content-length header?<br />
<br />
It only checks the header and should not mangle it. Well, there is only one<br />
case it changes it, it's when multiple similar content-length headers are<br />
sent, then it reduces them to only one.<br />
<br />
&gt; At a high level, our request flow looks like this:<br />
&gt; <br />
&gt; stunnel -&gt; haproxy -&gt; apache -&gt; passenger<br />
&gt; <br />
&gt; Where stunnel and haproxy are on the same machine, and apache/passenger are<br />
&gt; on three or four additional machines.<br />
&gt; <br />
&gt; Here's the relevant snippet from haproxy.cfg:<br />
&gt; <br />
&gt; defaults<br />
&gt;     mode                    http<br />
&gt;     log                     global<br />
&gt;     option                  dontlognull<br />
&gt;     option                  redispatch<br />
&gt;     retries                 3<br />
&gt;     timeout http-request    10s<br />
&gt;     timeout queue           1m<br />
&gt;     timeout connect         10s<br />
&gt;     timeout client          1m<br />
&gt;     timeout server          1m<br />
&gt;     timeout http-keep-alive 500<br />
&gt;     timeout check           10s<br />
&gt;     maxconn                 3000<br />
&gt; <br />
&gt; # Stunnel listens on 443 and forwards connections off to haproxy on 81<br />
&gt; frontend https *:81<br />
&gt;     option httplog<br />
&gt;     # Enabling http-server-close will cause file uploads to fail!<br />
&gt;     # option http-server-close<br />
&gt;     option forwardfor except 127.0.0.0/8<br />
&gt; <br />
&gt;     reqadd X-Forwarded-Proto:\ https<br />
&gt; <br />
&gt;     # set some ACLS?<br />
&gt;     # choose a backend?<br />
&gt;     # Nothing else really special<br />
<br />
Nothing fancy here !<br />
<br />
&gt; And here is a session log for each case, starting with the normal operation<br />
&gt; (no http-server-close set, or setting httpclose):<br />
&gt; <br />
&gt; 00000020:https.accept(0006)=000a from [10.0.1.30:43419]<br />
&gt; 00000020:https.clireq[000a:ffff]: POST /URL-GOES-HERE HTTP/1.1<br />
&gt; 00000020:https.clihdr[000a:ffff]: Host: dev.sermo.com<br />
&gt; 00000020:https.clihdr[000a:ffff]: Content-Type: multipart/form-data; charset=utf-8; boundary=0xKhTmLbOuNdArY<br />
&gt; 00000020:https.clihdr[000a:ffff]: User-Agent: iPhone Simulator; iPhone OS 4.3.2; en_US<br />
&gt; 00000020:https.clihdr[000a:ffff]: Accept-Encoding: gzip<br />
&gt; 00000020:https.clihdr[000a:ffff]: Content-Length: 62528<br />
&gt; 00000020:https.clihdr[000a:ffff]: Connection: keep-alive<br />
&gt; <br />
&gt; And here is with nothing else changed except for the addition of the<br />
&gt; http-server-close option:<br />
&gt; <br />
&gt; 00000007:https.accept(0006)=000a from [10.0.1.30:43688]<br />
&gt; 00000007:https.clireq[000a:ffff]: POST /URL-GOES-HERE HTTP/1.1<br />
&gt; 00000007:https.clihdr[000a:ffff]: Host: dev.sermo.com<br />
&gt; 00000007:https.clihdr[000a:ffff]: Content-Type: multipart/form-data; charset=utf-8; boundary=0xKhTmLbOuNdArY<br />
&gt; 00000007:https.clihdr[000a:ffff]: User-Agent: iPhone Simulator; iPhone OS 4.3.2; en_US<br />
&gt; 00000007:https.clihdr[000a:ffff]: Accept-Encoding: gzip<br />
&gt; 00000007:https.clihdr[000a:ffff]: Content-Length: 0<br />
&gt; 00000007:https.clihdr[000a:ffff]: Connection: keep-alive<br />
<br />
Wow this is amazing !<br />
I've never seen that and don't understand how that may happen. I'm relly<br />
interested in knowing your version to try to reproduce.<br />
<br />
&gt; We can get the system to work if instead of setting http-server-close, we set<br />
&gt; httpclose but like I explained above this doesn't seem to be ideal.<br />
<br />
I agree this is not a good solution, we need to fix this.<br />
<br />
If you could get a network capture for each side too, that would help<br />
a lot.  Don't post it to the list if there are sensible information there.<br />
<br />
Regards,<br />
Willy]]></description>
            <dc:creator>Willy Tarreau</dc:creator>
            <category>HAProxy</category>
            <pubDate>Tue, 27 Mar 2012 20:30:01 +0200</pubDate>
        </item>
        <item>
            <guid>http://www.serverphorums.com/read.php?10,468583,468583#msg-468583</guid>
            <title>http-server-close and HTTP uploads/content-length header</title>
            <link>http://www.serverphorums.com/read.php?10,468583,468583#msg-468583</link>
            <description><![CDATA[ Hi all,<br />
<br />
Was hoping someone could help shed some light on an issue we're observing in our setup. When we have &quot;option http-server-close&quot; set, then file uploads via multipart form data will not work. By &quot;not work&quot; I mean that the HTTP content-length header will be reported as 0, which in turn causes the final destination to get seriously confused by the request and then give up. I realize this sounds strange, as content-length is reported by the client but this is the behavior I'm witnessing. When I have http-server-close on, the content-length is 0, and when I remove the option the content-length is as expected — with no changes on the client end.<br />
<br />
Additionally, if we set &quot;option httpclose&quot; then everything will work. However, I'm under the impression that using httpclose isn't ideal since clients then wouldn't be able to send multiple HTTP requests across the same connection. Since this is a mobile app, having that functionality would enhance performance. Setting http-server-close seems to be ideal because we can correctly load balance multiple requests in the same session.<br />
<br />
So,  I'm wondering:<br />
<br />
 *   Does haproxy do anything to validate/calculate the content-length header?<br />
 *   How would the presence of http-server-close affect the request's content-length header?<br />
<br />
At a high level, our request flow looks like this:<br />
<br />
stunnel -&gt; haproxy -&gt; apache -&gt; passenger<br />
<br />
Where stunnel and haproxy are on the same machine, and apache/passenger are on three or four additional machines.<br />
<br />
Here's the relevant snippet from haproxy.cfg:<br />
<br />
defaults<br />
    mode                    http<br />
    log                     global<br />
    option                  dontlognull<br />
    option                  redispatch<br />
    retries                 3<br />
    timeout http-request    10s<br />
    timeout queue           1m<br />
    timeout connect         10s<br />
    timeout client          1m<br />
    timeout server          1m<br />
    timeout http-keep-alive 500<br />
    timeout check           10s<br />
    maxconn                 3000<br />
<br />
# Stunnel listens on 443 and forwards connections off to haproxy on 81<br />
frontend https *:81<br />
    option httplog<br />
    # Enabling http-server-close will cause file uploads to fail!<br />
    # option http-server-close<br />
    option forwardfor except 127.0.0.0/8<br />
<br />
    reqadd X-Forwarded-Proto:\ https<br />
<br />
    # set some ACLS…<br />
    # choose a backend…<br />
    # Nothing else really special<br />
<br />
And here is a session log for each case, starting with the normal operation (no http-server-close set, or setting httpclose):<br />
<br />
00000020:https.accept(0006)=000a from [10.0.1.30:43419]<br />
00000020:https.clireq[000a:ffff]: POST /URL-GOES-HERE HTTP/1.1<br />
00000020:https.clihdr[000a:ffff]: Host: dev.sermo.com<br />
00000020:https.clihdr[000a:ffff]: Content-Type: multipart/form-data; charset=utf-8; boundary=0xKhTmLbOuNdArY<br />
00000020:https.clihdr[000a:ffff]: User-Agent: iPhone Simulator; iPhone OS 4..3.2; en_US<br />
00000020:https.clihdr[000a:ffff]: Accept-Encoding: gzip<br />
00000020:https.clihdr[000a:ffff]: Content-Length: 62528<br />
00000020:https.clihdr[000a:ffff]: Connection: keep-alive<br />
<br />
And here is with nothing else changed except for the addition of the http-server-close option:<br />
<br />
00000007:https.accept(0006)=000a from [10.0.1.30:43688]<br />
00000007:https.clireq[000a:ffff]: POST /URL-GOES-HERE HTTP/1.1<br />
00000007:https.clihdr[000a:ffff]: Host: dev.sermo.com<br />
00000007:https.clihdr[000a:ffff]: Content-Type: multipart/form-data; charset=utf-8; boundary=0xKhTmLbOuNdArY<br />
00000007:https.clihdr[000a:ffff]: User-Agent: iPhone Simulator; iPhone OS 4..3.2; en_US<br />
00000007:https.clihdr[000a:ffff]: Accept-Encoding: gzip<br />
00000007:https.clihdr[000a:ffff]: Content-Length: 0<br />
00000007:https.clihdr[000a:ffff]: Connection: keep-alive<br />
<br />
We can get the system to work if instead of setting http-server-close, we set httpclose but like I explained above this doesn't seem to be ideal.<br />
<br />
Any help or pointers would be appreciated!<br />
<br />
Thanks,<br />
rg]]></description>
            <dc:creator>Rusty Geldmacher</dc:creator>
            <category>HAProxy</category>
            <pubDate>Mon, 26 Mar 2012 21:10:01 +0200</pubDate>
        </item>
    </channel>
</rss>
