Return-Path: Delivered-To: apmail-jakarta-httpclient-user-archive@www.apache.org Received: (qmail 67387 invoked from network); 17 Jan 2006 11:34:33 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 17 Jan 2006 11:34:33 -0000 Received: (qmail 28974 invoked by uid 500); 17 Jan 2006 11:34:32 -0000 Delivered-To: apmail-jakarta-httpclient-user-archive@jakarta.apache.org Received: (qmail 28961 invoked by uid 500); 17 Jan 2006 11:34:32 -0000 Mailing-List: contact httpclient-user-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: "HttpClient User Discussion" Reply-To: "HttpClient User Discussion" Delivered-To: mailing list httpclient-user@jakarta.apache.org Received: (qmail 28950 invoked by uid 99); 17 Jan 2006 11:34:32 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 17 Jan 2006 03:34:32 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=UNPARSEABLE_RELAY X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: local policy) Received: from [202.67.4.4] (HELO chandgate.mahindrabt.com) (202.67.4.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 17 Jan 2006 03:34:31 -0800 Received: from interscan (imss1.chand.mahindrabt.com [10.3.0.65]) by chandgate.mahindrabt.com (8.12.10/8.12.10) with ESMTP id k0HBSaln032296 for ; Tue, 17 Jan 2006 16:58:36 +0530 Received: from intranet.chand.mahindrabt.com ([10.3.0.2]) by interscan with InterScan Messaging Security Suite; Tue, 17 Jan 2006 17:11:21 +0530 Received: from british-s9m83vo ([10.3.0.150])by intranet.chand.mahindrabt.com (8.13.1/8.12.10) with ESMTP id k0HBWx1Y024539for ; Tue, 17 Jan 2006 17:02:59 +0530 Received: from MBTCHEXCHANGE.mahindrabt.com ([10.3.4.171]) by british-s9m83vo with InterScan Messaging Security Suite; Tue, 17 Jan 2006 17:05:28 +0530 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-MimeOLE: Produced By Microsoft Exchange V6.5.6944.0 Subject: RE: Virtual Host problems Date: Tue, 17 Jan 2006 17:05:40 +0530 Message-ID: X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Virtual Host problems Thread-Index: AcYbWI2X5qDygOr9SnmPnFYneO8WlgAAEzEg From: "DEEPAK SHETTY" To: "HttpClient User Discussion" X-imss-version: 2.035 X-imss-result: Passed X-imss-scores: Clean:99.90000 C:2 M:3 S:5 R:5 X-imss-settings: Baseline:1 C:1 M:1 S:1 R:1 (0.0000 0.0000) X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Hi I realize there is no such thing as a virtual port. However let me explain.=0D There was a MS Proxy system accessed as=0D http://externaldns:port1/App1 which would proxy requests to http://internalip:port2/App1 (A Reverse Proxy like you point out) The MS Proxy system would add a Host Header as externaldns:port1 and the internal system depended on this host header for reasons best know to it. Note that port1 !=3D port2 (and there is no reason why it should be) Now this MS proxy is being replaced by a java servlet using HttpClient And we are only able to add the host header as externaldns:port2 using http client.=0D I can't see how the spec can allow the host header ip/dns to be changed but not the port, because this solution always needs the ports to be same. If you consider bridging reverse proxies where the external DMZ reverse proxy is accessed via HTTPS(443) , but internal network access is HTTP(80) then too this fails. I assume there is no way around this with httpclient then? Regards deepak >-----Original Message----- >From: Oleg Kalnichevski [mailto:olegk@apache.org] >Sent: Tuesday, January 17, 2006 4:52 PM >To: HttpClient User Discussion >Subject: Re: Virtual Host problems > >DEEPAK SHETTY wrote: >> Hi >> We have a proxy servlet which proxies requests to downstream servers and >> we use HttpClient to implement the proxy. We need to pass the Host and >> Port that the user had requested for as the Host header to the >> downstream system (which is not aware of the proxy) so >> Client -->ProxyServer(http-client)-->DownStream >> 192.168.0.254(80) --> yadayada:8081 >> Host header >> wanted(192.168.0.254:80) >> >> Now I can use VirtualHost to specify the Host name , but theres no way >> to specify the port >> (http://www.mail-archive.com/httpclient-user@jakarta.apache.org/msg01357 >> .html) >> Or to use the example from the thread >> >> IP: 192.168.0.254 >> >> virtual-host1: yadayada:8081 >> virtual-host2: blahblah:8082 >> >> In order to get a resource form the virtual-host1 do: >> bind to 192.168.0.254:8081 >> GET /some/stuff HTTP/1.1 >> Host: yadayada:8081 >> >> In order to get a resource from the virtual-host2 do: >> bind to 192.168.0.254:8082 >> GET /some/stuff HTTP/1.1 >> Host: blahblah:8082 >> >> However we need the proxy to listen on 192.168.0.254 port 80 (and not >> 8081 or 8082) >> >> Are there any workarounds possible? >> Regards >> deepak >> > >Deepak, >There is no such thing as a virtual port. > >If the servlet you are writing indeed acts as an HTTP proxy (not to be >confused with a reverse HTTP proxy), then by the HTTP spec requests sent >by the clients to the proxy are supposed to look like that > >bind to 192.168.0.254:80 >GET http://yadayada:8081/some/stuff HTTP/1.1 >Host: yadayada:8081 > > >bind to 192.168.0.254:80 >GET http://blahblah:8082/some/stuff HTTP/1.1 >Host: blahblah:8082 > >HttpClient is perfectly capable of generating such requests if >configured properly. There is no need for a 'virtual' port at all > >Oleg > > >> >> ********************************************************* >> Disclaimer: >> >> The contents of this E-mail (including the contents of the enclosure(s) >or attachment(s) if any) are privileged and confidential material of MBT >and should not be disclosed to, used by or copied in any manner by anyone >other than the intended addressee(s). In case you are not the desired >addressee, you should delete this message and/or re-direct it to the >sender. The views expressed in this E-mail message (including the >enclosure(s) or attachment(s) if any) are those of the individual sender, >except where the sender expressly, and with authority, states them to be >the views of MBT. >> >> This e-mail message including attachment/(s), if any, is believed to be >free of any virus. However, it is the responsibility of the recipient to >ensure that it is virus free and MBT is not responsible for any loss or >damage arising in any way from its use >> >> >> ******************************************************** >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: httpclient-user-unsubscribe@jakarta.apache.org >> For additional commands, e-mail: httpclient-user-help@jakarta.apache.org >> >> > > >--------------------------------------------------------------------- >To unsubscribe, e-mail: httpclient-user-unsubscribe@jakarta.apache.org >For additional commands, e-mail: httpclient-user-help@jakarta.apache.org > ********************************************************* Disclaimer: =0D The contents of this E-mail (including the contents of the enclosure(s) or= attachment(s) if any) are privileged and confidential material of MBT and= should not be disclosed to, used by or copied in any manner by anyone= other than the intended addressee(s). In case you are not the desired= addressee, you should delete this message and/or re-direct it to the= sender. The views expressed in this E-mail message (including the= enclosure(s) or attachment(s) if any) are those of the individual sender,= except where the sender expressly, and with authority, states them to be= the views of MBT. This e-mail message including attachment/(s), if any, is believed to be= free of any virus. However, it is the responsibility of the recipient to= ensure that it is virus free and MBT is not responsible for any loss or= damage arising in any way from its use =0D ******************************************************** --------------------------------------------------------------------- To unsubscribe, e-mail: httpclient-user-unsubscribe@jakarta.apache.org For additional commands, e-mail: httpclient-user-help@jakarta.apache.org