httpd-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Chris Grigor <cgri...@irdeto.com>
Subject [users@httpd] ProxPass, headers and body
Date Fri, 26 Jul 2013 12:10:23 GMT
Hi

I'm new to the list and have a question on ProxyPass and message bodies, please excuse me
if I have posted to much.

My setup is as follows

Apache httpd-2.2.15-15.el6_2.1.x86_64
Linux version 2.6.32-276.el6.x86_64
Red Hat Enterprise Linux Server release 6.3 (Santiago)
apache-activemq-5.7.0

First an explnation of why I need to involve httpd ProxyPass.
I have an application off site that needs to post to an activemq queue, however the body of
the message is always empty in activemq and the application can't be updated to support adding
form values or headers. 
If I sniff the traffic (wireshark capture of TCP stream) between the app and activemq it looks
like this (IP chnaged to * for this email)

POST /amq?type=queue HTTP/1.1

Host: x.x.x.x:8008

Content-Length: 610

Expect: 100-continue

Connection: Keep-Alive

HTTP/1.1 100 Continue


<myData>this is a test</myData>
HTTP/1.1 200 OK

Date: Thu, 25 Jul 2013 12:52:23 GMT

Server: Jetty(7.6.7.v20120910)

Expires: Thu, 01 Jan 1970 00:00:00 GMT

messageID: ID:ip-10-0-0-153-33880-1374749906292-3:20:1:1:1

Content-Length: 12

Set-Cookie: JSESSIONID=1o7qt3kvw66nl1nierm2uoupm;Path=/api

Content-Type: application/x-www-form-urlencoded

username: admin

password: admin

Connection: close

Message sent



A correct way of posting directly into the queue looks like this
----------------------------------------------------------------------
POST /api/message/myQueue?type=queue HTTP/1.1

Host: x.x.x.x:8161

Connection: keep-alive

Content-Length: 1134

Authorization: Basic YWRtaW46YWRtaW4=

username: admin

Origin: chrome-extension://hgmloofddffdnphfgcellkdfbfbjeloo

password: admin

User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.72
Safari/537.36

Content-Type: application/x-www-form-urlencoded

Accept: */*

Accept-Encoding: gzip,deflate,sdch

Accept-Language: en-US,en;q=0.8

Cookie: JSESSIONID=93rygqkem0wyr3w7seha3v1b; PHPSESSID=i3173m4g4gk97oc9tgea7nvsg6


%3CmyData%3EThis%20is%20a%20test%3C%2FmyData%3E

1.1 200 OK

Set-Cookie: JSESSIONID=vd4qc0e40uhkkwv9381zgedb;Path=/api

Expires: Thu, 01 Jan 1970 00:00:00 GMT

messageID: ID:ip-10-0-0-153-33880-1374749906292-3:22:1:1:1

Content-Length: 12

Server: Jetty(7.6.7.v20120910)
Message sent
-------------------------------------------------------------

My plan was to have the application post to the httpd web server port 8008 first and I could
add addtional headers and possibly urlencode the body of the message (is that possible with
httpd?)
In httpd.conf I have specified the following (IP has been changed to * for this email)

<VirtualHost *:8008>
      Header set Content-Type "application/x-www-form-urlencoded"
      RequestHeader set Content-Type "application/x-www-form-urlencoded"
      Header set username "admin"
      RequestHeader set username "admin"
      Header set password "admin"
      RequestHeader set password "admin"
      ProxyPass /amq http://*.*.*.*:8161/api/message/myQueue
      ProxyPassReverse /amq http:// *.*.*.*:8161/api/message/myQueue
</VirtualHost>

httpd gets the post message from the app on port 8008, adds some headers and then passes it
on to activemq, however the body is blank, is there a way to urlencode the body of a POST
in httpd? or add a form value of body= ?

Thanks in advance
Chris


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Mime
View raw message