Amicuk Programming Answers

Forward/reverse proxy chain losing headers

-0001-11-30   Views:1


I have the following setup: user(browser) -> proxy1 -> proxy2 -> webserver This has both forward and reverse mappings. In proxy 1, I have an NSAPI plugin that appends a name/value(uid:userid) pair into the HTTP headers, at the end of my current h

I have the following setup:
user(browser) -> proxy1 -> proxy2 -> webserver
This has both forward and reverse mappings. In proxy 1, I have an NSAPI plugin that appends a name/value(uid:userid) pair into the HTTP headers, at the end of my current header string . I use
const char *HEADERS = "full-headers"; //HEADER NAME
pblock_findval((char *)HEADERS, request->reqpb))
pblock_remove((char *)HEADERS, request->reqpb);
pblock_nvinsert((char *)HEADERS, (char*)"current list of NV pairs, uid: user123", request->reqpb);
In the previous proxy versions to 3.63, the second proxy and teh webserver receive my entire header string(full-headers) without any issue and just as I sent it.
With version 3.63, my UID is missing from the "
Protocol Request PB (rq->reqpb)" section along with some other info in my header string. I use sdump to view the headers, plus my backend app is not receiving the uid.
Has anyone else had the issue of their headers getting mangled, and or missing in Proxy 3.63 ?Or does anyone have any ideas to the issue?

The replay answer
Yep, good catch
There is a bug in the proxy : Proxy 3.6 SP3 removes "Proxy-authenticate:" HTTP header when forwarding requests to other proxies.
This is basically in adherence to RFC2616 clause
13.5.1 End-to-end and Hop-by-hop Headers:
For the purpose of defining the behavior of caches and non-caching
proxies, we divide HTTP headers into two categories:
- End-to-end headers, which are transmitted to the ultimate
recipient of a request or response. End-to-end headers in
responses MUST be stored as part of a cache entry and MUST be
transmitted in any response formed from a cache entry.
- Hop-by-hop headers, which are meaningful only for a single
transport-level connection, and are not stored by caches or
forwarded by proxies.
The following HTTP/1.1 headers are hop-by-hop headers:
- Connection
- Keep-Alive
- Proxy-Authenticate
- Proxy-Authorization
- TE
- Trailers
- Transfer-Encoding
- Upgrade
All other headers defined by HTTP/1.1 are end-to-end headers.
This somehow messed up the proxy chain configurations
This has been fixed in SP4 which will be released in a week or two

Go to See the other 6 answers

Forward/reverse proxy chain losing headers

Category:DefaultRelease time:-0001-11-30Views:130

I have the following setup: user(browser) -> proxy1 -> proxy2 -> webserver This has both forward and reverse mappings. In proxy 1, I have an NSAPI plugin that appends a name/value(uid:userid) pair into the HTTP headers, at the end of my current h[More]

Issue in configuring TMG as Forward/Reverse Proxy

Category:DefaultRelease time:-0001-11-30Views:130

I am trying to setup reverse and forward proxy using TMG 2010. I have following networks: Internal Networks: DMZ (Perimeter) Network:   NAT relationship with external network e.g. Public IPs I've setup one TMG node[More]

Forward parameters in reverse proxy configuration

Category:DefaultRelease time:-0001-11-30Views:130

Hi, Looking at the detailed configuration in a reverse proxy rule in SJSWS, I have derived the following conclusions: 1) Where the SJSWS listener has SSL-enabled, reverse proxy works on a HTTPS in, HTTP out basis. 2) Details in the incoming request's[More]

SJSWS 7 u4 reverse proxy setup with client ip forwarding

Category:DefaultRelease time:-0001-11-30Views:130

Hi, I am trying to set up a reverse proxy to glassfish enterprise 2.1 so that it will pass on the client ip address. I have added this line to my obj.conf file: ObjectType fn="forward-ip" hdr="Client-ip" Entire obj.conf below: <Obje[More]

My environment is 99% of the way there, but my ARR reverse proxy doesnt seem to be forwarding lyncdiscover properly. Can someone help?

Category:DefaultRelease time:-0001-11-30Views:130

I recently cut over from lync 2010 with an apache reverse proxy to a lync2013 deployment using microsoft ARR as the reverse proxy. Last night i cut over to the new ARR reverse proxy but our lync 2013 mobility tests didnt go well. I also cant get the[More]

HCI/ECC connection issue with reverse proxy

Category:DefaultRelease time:-0001-11-30Views:130

Hi, we are struggling to set up the connection from C4C to ECC using a reverse proxy (apache). Thank you for any help! Best Regards Florian Our apache config is as follows: <VirtualHost *:443>   ServerName   SSLEngine      [More]

Lync Reverse Proxy Alternatives

Category:DefaultRelease time:2015-10-11Views:130

When migrating from OCS 2007 to Lync 2010, we balked Microsoft’s recommendation to deploy Forefront Threat Management Gateway (or ISA) just to get the reverse proxy services.  TMG is way too expensive and complex for such a limited, simple use case.[More]

Apache as reverse proxy - 400 Bad request

Category:DefaultRelease time:-0001-11-30Views:130

Hi all, I'm configured apache as reverse proxy according to this blog: The Reverse Proxy Series -- Part 3: Apache as a reverse-proxy When I try to navigate http://testcomp/irj I get "400 - Bad request" See exception; <i>Message : User Gues[More]

Reverse proxy setup problems

Category:DefaultRelease time:-0001-11-30Views:130

I am trying to setup a reverse proxy using iPlanet Web Proxy Server 3.6. I have followed the instructions in the manual which seems pretty straight forward but nothing is happening. I am getting no traffic at all between any of the boxes involved. I[More]

Reverse Proxy Pbm Rewriting Location

Category:DefaultRelease time:-0001-11-30Views:130

Sun Java Web Proxy Server v4.0.7 is running on Windows 2003 Server. The SJWP server is running as a reverse proxy for the following domains: I have configured the SJWP server to use Virtual Multihosting in Reverse[More]

Is this dynamic caching scenario possible with reverse proxy?

Category:DefaultRelease time:-0001-11-30Views:130

I'm considering using the Sun System Java Web Server as a reverse proxy in front of other SSJWS's running a java webapp. I'm creating a dynamic site where most of the pages change only occasionally. I'm wondering if the follow "dream compression/cach[More]

Hi All, I am getting an  error "Inconsistancies found while checking the Data Store Object" while activating the ODS. Actually,I have added new feild to ODS(containing data) and activated it successfully. But while deleting the same feild and ac [More]
Hi, We are working on oracle 8.1 on 32 bit on solaris 64bit operating system. We are working on SAP R/3 4.6C. We want to migrate our oracle database form 32 bit to 64 bit. If anyone can help me with some documentation, it would be helpful. Please sen [More]
Hi all, Cisco 1751-V witch WIC-4ESW IoS : c1700-adventerprisek9-mz.124-4.XC.bin CCME 4.0.1 interface FastEthernet0/1 description ** To Cisco AP 1200 ** switchport trunk encapsulation dot1q switchport mode trunk interface FastEthernet0/2 description * [More]
I'm trying to view my ipad on my PC, I have them connected via HDMI cable... I don't know how to make it show on the PC, any suggestions?HDMI is a video-out system.  It's used for connecting an iPad to a monitor or TV or something of the sort.  If yo [More]
While modifying a DW template, I suddenly began receiving sharing violation error messages which disallow saving the file and thus, updating the html pages based on the template. As I am the only one to use the program, I consider this some sort of g [More]
Hi, I have a problem with the setting up of an OWA account on BIS website.  I think my only fix may be to change my email address formatting but I do not want to nor should I have to as this has been our email setup for years.  It would be appreciate [More]
After upgrading to Lion, I click on the "purchased" link and it will not go to the "purchased" list. Anybody else having this issue?I believe the store is overloaded, and will clear itself when people calm down loding OSX Lion. Try a d [More]
I have a problem when using Date objects. If i create a Date object like this: Date d = new Date( 2002,03,20,19,45 ), and i try to get the number of Milliseconds ( d.getTime() ) i get a number that cannot be correct. I't is to high. I't looks like i [More]
Dear Guru we tried to post transaction customer with special GL account and Revenue line item with document type DI which is Customer Invoice. The point is users can post it for every month until now they do month-end closing and post the transaction [More]
if upgarded to the latest version of 7.2.3? Any know if there are issues if it is installed on my MacBook Pro 2.8. GHz Intel Core i7 running 10.7.3?I don't actually know if it will run on Lion or Not but there are other issues. The version 7 (Logic 8 [More]