Unfortunately it's not my client, but Nokia's EAIF MMSC (emulator in this
case).

Like I said, I've coded my application to the protocol (EAIF) and it works.
I only need to add apache httpd in between in order to restrict access to
the application (by IP address range).

The response headers without using apache httpd:

HTTP/1.1 202 Accepted
Server: Apache-Coyote/1.1
X-Powered-By: Servlet 2.4; JBoss-4 (build: CVSTag=JBoss_4)/Tomcat-5.5
Transfer-Encoding: chunked
Date: Wed, 25 Jul 2007 08:39:07 GMT


And the headers using apache httpd and mod_proxy:

HTTP/1.1 202 Accepted
Date: Wed, 25 Jul 2007 08:43:37 GMT
Server: Apache-Coyote/1.1
X-Powered-By: Servlet 2.4; JBoss-4 (build: CVSTag=JBoss_4)/Tomcat-5.5
Content-Length: 0
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/plain


As you can see, httpd is replacing Transfer-Encoding with C-L, which is
breaking things.
I've used 'SetEnv proxy-sendchunked 1' in my httpd config, but it did not
make a difference.

Another kind of response (204 No Content) used for synchronous ACKs has the
same issue.

I'm tempted to hack the mod_proxy code but only has a last resort. Surely
there must be some way to configure httpd to stick with the original
headers.

Cheers

Dan

On 25/07/07, Vincent Bray <[EMAIL PROTECTED]> wrote:

On 25/07/07, Daniel JavaDev <[EMAIL PROTECTED]> wrote:
> Hi all,
>
> I have the following rules on my apache 2.2.4 config:
>
> RewriteEngine on
> RewriteRule ^/someURL http://anotherURL [P]
>
> where someURL is the a publicly available url, and anotherURL is a
private
> url (localhost on another port). This setup is for restricting access to
an
> application server.
>
> It all works fine, except that the application needs to return an empty
body
> response (ACK) for some HTTP POSTs, and apache is adding the
CONTENT-LENGTH:
> 0 header to those responses, which is an invalid header in the context
of
> the protocol used by the application.
>
> Is there anyway of forcing apache not to add the content-length header
to
> the responses?
>

Apache is a http server, not a http-but-not-really server. If your
client barfs on a correct Content-Length header then your client is
broken. I'd suggest either using 204 No Content, or designing your own
protocol.

--
noodl

---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: [EMAIL PROTECTED]
   "   from the digest: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Reply via email to