302 redirect is passed on as status 200

Topics: User Forum
Feb 4, 2011 at 7:28 AM

Dear Cheeso,

I use IIRF (2.1.1.25 x86), IIS6 respectively and want to reverse proxy to a server over https. This works fine, no problems with certificates. Now, some locations on this server are protected by Oracle SSO. In the course of the conversation a 302 redirect to the Oracle SSO server is issued however IIRF passes on a status message 200.

The following servers are involved:
<rproxy.XXX.org> (111.111.111.111) where IIRF/IIS6 is located
<apps.XXX.org> the server I want to reverse proxy
<sso.XXX.org> the Oracle SSO server.

Below I provide you with the IIRF configuration file, the HTTP headers of the above, erroneous request as well as an HTTP header report for an expected, successful request. I also attach a verbose IIRF log file for the incident.

Sorry for the lengthy post, I hope you have every information you need to help me solving the problem.

 Many thanks for your great support,

 Juergen


This is my IIRF configuration:

---8<---
RewriteEngine on
RewriteLogLevel 5
RewriteLog c:\temp\IIRF\iirf-rewrite
ProxyPass /apps/(.*)$ https://apps.XXX.org/apps/$1
ProxyPassReverse /apps/(.*)$ https://apps.XXX.org/apps/$1
---8<---


Below you see the HTTP header report for requesting a protected resource (I replaced the token string with [longtoken]):

---8<---
GET /svcs/test/time HTTP/1.1
Accept: */*
Accept-Language: en-gb
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; MS-RTC LM 8; AskTbFXTV5/5.9.1.14019)
Host: rproxy.XXX.org
Connection: Keep-Alive
X-NovINet: v1.2

HTTP/1.1 200 OK
Date: Fri, 04 Feb 2011 07:16:01 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
Location: https://sso.XXX.org:5443/pls/orasso/orasso.wwsso_app_admin.ls_login?Site2pstoreToken=v1.4[longtoken]
Content-Type: text/html; charset=iso-8859-1
Connection: Keep-Alive
Keep-Alive: timeout=5, max=999
Content-Length: 948
Date: Fri, 04 Feb 2011 07:16:02 GMT
Via: 1.1 111.111.111.111 (IIRF v2.1)
---8<---

This would be the expected, successful conversation:

---8<---
GET /svcs/test/time HTTP/1.1
Accept: */*
Accept-Language: en-gb
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; MS-RTC LM 8; AskTbFXTV5/5.9.1.14019)
Host: apps.XXX.org
Connection: Keep-Alive
X-NovINet: v1.2

HTTP/1.1 302 Redirect to Oracle SSO Server
Location: https://sso.XXX.org:5443/pls/orasso/orasso.wwsso_app_admin.ls_login?Site2pstoreToken=v1.4[longtoken]
Content-Type: text/html; charset=iso-8859-1
Connection: Keep-Alive
Keep-Alive: timeout=5, max=999
Content-Length: 948
Date: Fri, 04 Feb 2011 07:16:54 GMT

GET /pls/orasso/orasso.wwsso_app_admin.ls_login?Site2pstoreToken=[longtoken] HTTP/1.1
Accept: */*
Accept-Language: en-gb
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; MS-RTC LM 8; AskTbFXTV5/5.9.1.14019)
Host: sso.XXX.org:5443
Connection: Keep-Alive
Cookie: SSO_ID=v2.4[longtoken]
X-NovINet: v1.2

HTTP/1.1 200 OK
Date: Fri, 04 Feb 2011 07:16:54 GMT
Server: Oracle-Application-Server-10g/10.1.2.4.0 Oracle-HTTP-Server
Cache-Control: no-cache
Pragma: no-cache
Expires: 0
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html; charset=UTF-8

POST /XXX/sso/login HTTP/1.1
Accept: */*
Referer: https://sso.XXX.org:5443/pls/orasso/orasso.wwsso_app_admin.ls_login?Site2pstoreToken=[longtoken]
Accept-Language: en-gb
Content-Type: application/x-www-form-urlencoded
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; MS-RTC LM 8; AskTbFXTV5/5.9.1.14019)
Host: sso.XXX.org:5443
Content-Length: 614
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: SSO_ID=v2.4[longtoken]
X-NovINet: v1.2

subscribername=DEFAULT%2BCOMPANY&p_error_code=&ssousername=ADMIN-JR&p_submit_url=https%253A%252F%252Fsso.XXX.org%253A5443%252Fsso%252Fauth&site2pstoretoken=v1.4[longtoken]&p_cancel_url=https%253A%252F%252Fapps.XXX.org

HTTP/1.1 200 OK
Date: Fri, 04 Feb 2011 07:16:54 GMT
Server: Oracle-Application-Server-10g/10.1.2.4.0 Oracle-HTTP-Server
X-Powered-By: PHP/4.3.9
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html

GET /XXX/sso/img/XXX-intranet-logo.gif HTTP/1.1
Accept: */*
Referer: https://sso.XXX.org:5443/XXX/sso/login
Accept-Language: en-gb
UA-CPU: x86
Accept-Encoding: gzip, deflate
If-Modified-Since: Wed, 07 May 2008 13:40:24 GMT
If-None-Match: "2c0fa-6d6-4821b148"
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; MS-RTC LM 8; AskTbFXTV5/5.9.1.14019)
Host: sso.XXX.org:5443
Connection: Keep-Alive
Cookie: SSO_ID=v2.4[longtoken]
X-NovINet: v1.2

HTTP/1.1 304 Not Modified
Date: Fri, 04 Feb 2011 07:16:54 GMT
Server: Oracle-Application-Server-10g/10.1.2.4.0 Oracle-HTTP-Server
Connection: close
ETag: "2c0fa-6d6-4821b148"
---8<---


The IIRF log file:
---8<---
Fri Feb 04 08:29:56 -  3076 - -------------------------------------------------------
Fri Feb 04 08:29:56 -  3076 - Ionic ISAPI Rewriting Filter (IIRF) 2.1.1.25 x86 RELEASE
Fri Feb 04 08:29:56 -  3076 - IIRF was built on: Jan  7 2011 07:30:24
Fri Feb 04 08:29:56 -  3076 - Cached: DLL_PROCESS_ATTACH
Fri Feb 04 08:29:56 -  3076 - Cached: Process ID: 4824
Fri Feb 04 08:29:56 -  3076 - Cached: DLL_PROCESS_ATTACH - complete
Fri Feb 04 08:29:56 -  3076 - Cached: GetFilterVersion
Fri Feb 04 08:29:56 -  3076 - GetLogFile: app:'/LM/W3SVC/1/ROOT'  new log:'c:\temp\IIRF\iirf-rewrite.4824.log'
Fri Feb 04 08:29:56 -  3076 - ReadVdirConfig: actual log file 'c:\temp\IIRF\iirf-rewrite.4824.log'
Fri Feb 04 08:29:56 -  3076 - ReadVdirConfig: ini file: 'c:\inetpub\wwwroot\Iirf.ini'
Fri Feb 04 08:29:56 -  3076 - ReadVdirConfig: ini file timestamp: 2011/02/04 08:29:10 W. Europe Standard Time
Fri Feb 04 08:29:56 -  3076 - ReadVdirConfig: cfg(0x01CC5010)
Fri Feb 04 08:29:56 -  3076 - ReadVdirConfig: LogLevel = 5
Fri Feb 04 08:29:56 -  3076 - ReadVdirConfig: pass 2
Fri Feb 04 08:29:56 -  3076 - ReadVdirConfig: c:\inetpub\wwwroot\Iirf.ini(1): RewriteEngine will be enabled.
Fri Feb 04 08:29:56 -  3076 - ReadVdirConfig: c:\inetpub\wwwroot\Iirf.ini(7): ProxyPass (rule 1)  '/svcs/(.*)$'  'https://apps.XXX.org/svcs/$1'   (null)
Fri Feb 04 08:29:56 -  3076 - ReadVdirConfig: c:\inetpub\wwwroot\Iirf.ini(8): ProxyPassReverse   /svcs/(.*)$  https://apps.XXX.org/svcs/$1
Fri Feb 04 08:29:56 -  3076 - ReadVdirConfig: Done reading INI for the root vdir, found 1 rules (0 errors, 0 warnings) on 9 lines
Fri Feb 04 08:29:56 -  3076 - GetVdirConfig: Obtain  vdir '/LM/W3SVC/1/ROOT' (era=0) (rc=1) (Expired=0) (ptr=0x01CC5010)...
Fri Feb 04 08:29:56 -  3076 - HttpFilterProc: SF_NOTIFY_URL_MAP
Fri Feb 04 08:29:56 -  3076 - HttpFilterProc: cfg= 0x01CC5010
Fri Feb 04 08:29:56 -  3076 - HttpFilterProc: SF_NOTIFY_AUTH_COMPLETE
Fri Feb 04 08:29:56 -  3076 - DoRewrites
Fri Feb 04 08:29:56 -  3076 - GetHeader_AutoFree: getting 'url'
Fri Feb 04 08:29:56 -  3076 - GetHeader_AutoFree: 16 bytes   ptr:0x000BDA20
Fri Feb 04 08:29:56 -  3076 - GetHeader_AutoFree: 'url' = '/svcs/test/time'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: getting 'QUERY_STRING'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: 1 bytes
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: result ''
Fri Feb 04 08:29:56 -  3076 - GetHeader_AutoFree: getting 'method'
Fri Feb 04 08:29:56 -  3076 - GetHeader_AutoFree: 4 bytes   ptr:0x000BDB30
Fri Feb 04 08:29:56 -  3076 - GetHeader_AutoFree: 'method' = 'GET'
Fri Feb 04 08:29:56 -  3076 - DoRewrites: New Url, before decoding: '/svcs/test/time'
Fri Feb 04 08:29:56 -  3076 - DoRewrites: Url (no decoding): '/svcs/test/time'
Fri Feb 04 08:29:56 -  3076 - EvaluateRules: depth=0
Fri Feb 04 08:29:56 -  3076 - GetServerVariable: getting 'SCRIPT_NAME'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable: 16 bytes
Fri Feb 04 08:29:56 -  3076 - GetServerVariable: result '/svcs/test/time'
Fri Feb 04 08:29:56 -  3076 - EvaluateRules: no RewriteBase
Fri Feb 04 08:29:56 -  3076 - EvaluateRules: Rule 1: pattern: /svcs/(.*)$  subject: /svcs/test/time
Fri Feb 04 08:29:56 -  3076 - EvaluateRules: Rule 1: 2 match
Fri Feb 04 08:29:56 -  3076 - ReplaceServerVariables: alloc 34 bytes
Fri Feb 04 08:29:56 -  3076 - ReplaceServerVariables: in='https://apps.XXX.org/svcs/$1' out='https://apps.XXX.org/svcs/$1'
Fri Feb 04 08:29:56 -  3076 - GenerateReplacementString: alloc 42 bytes
Fri Feb 04 08:29:56 -  3076 - GenerateReplacementString: result 'https://apps.XXX.org/svcs/test/time'
Fri Feb 04 08:29:56 -  3076 - EvaluateRules: Result (length 40): https://apps.XXX.org/svcs/test/time
Fri Feb 04 08:29:56 -  3076 - EvaluateRules: returning 999
Fri Feb 04 08:29:56 -  3076 - DoRewrites: Proxy to: 'https://apps.XXX.org/svcs/test/time'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: getting 'REQUEST_METHOD'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: 4 bytes
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: result 'GET'
Fri Feb 04 08:29:56 -  3076 - IirfProxy_SendRequest: https://apps.XXX.org/svcs/test/time
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: getting 'REMOTE_ADDR'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: 14 bytes
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: result '222.222.222.222'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: getting 'LOCAL_ADDR'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: 13 bytes
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: result '111.111.111.111'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: getting 'HTTP_REFERER'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: 128 bytes
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: result ''
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: getting 'HTTP_USER_AGENT'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: 132 bytes
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: result 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; MS-RTC LM 8; AskTbFXTV5/5.9.1.14019)'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: getting 'HTTP_ACCEPT'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: 4 bytes
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: result '*/*'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: getting 'SERVER_NAME'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: 12 bytes
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: result 'rproxy.XXX.org'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: getting 'ALL_RAW'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: 288 bytes
Fri Feb 04 08:29:56 -  3076 - GetServerVariable_AutoFree: result 'Connection: Keep-Alive

Accept: */*

Accept-Encoding: gzip, deflate

Accept-Language: en-gb

Host: rproxy.XXX.org

User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; MS-RTC LM 8; AskTbFXTV5/5.9.1.14019)

UA-CPU: x86

X-NovINet: v1.2

'
Fri Feb 04 08:29:56 -  3076 - ProxyRequest: host(apps.XXX.org)  path+query(/svcs/test/time)
Fri Feb 04 08:29:56 -  3076 - ParseAllRaw: Connection: Keep-Alive

Accept: */*

Accept-Encoding: gzip, deflate

Accept-Language: en-gb

Host: rproxy.XXX.org

User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; MS-RTC LM 8; AskTbFXTV5/5.9.1.14019)

UA-CPU: x86

X-NovINet: v1.2

Fri Feb 04 08:29:56 -  3076 - ParseAllRaw: hdr Connection: Keep-Alive
Fri Feb 04 08:29:56 -  3076 - ParseAllRaw: hdr Accept: */*
Fri Feb 04 08:29:56 -  3076 - ParseAllRaw: hdr Accept-Encoding: gzip, deflate
Fri Feb 04 08:29:56 -  3076 - ParseAllRaw: hdr Accept-Language: en-gb
Fri Feb 04 08:29:56 -  3076 - ParseAllRaw: hdr Host: rproxy.XXX.org
Fri Feb 04 08:29:56 -  3076 - ParseAllRaw: hdr User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; MS-RTC LM 8; AskTbFXTV5/5.9.1.14019)
Fri Feb 04 08:29:56 -  3076 - ParseAllRaw: hdr UA-CPU: x86
Fri Feb 04 08:29:56 -  3076 - ParseAllRaw: hdr X-NovINet: v1.2
Fri Feb 04 08:29:56 -  3076 - ParseAllRaw: found 8 headers
Fri Feb 04 08:29:56 -  3076 - GenProxyRequestHeadersString: rh(0x01CC3F98) nh(apps.XXX.org) sn(rproxy.XXX.org) la(111.111.111.111) ra(222.222.222.222) ts(0)
Fri Feb 04 08:29:56 -  3076 - GenProxyRequestHeadersString: header Host: apps.XXX.org
Fri Feb 04 08:29:56 -  3076 - GenProxyRequestHeadersString: header Via: 1.1 111.111.111.111 (IIRF v2.1)
Fri Feb 04 08:29:56 -  3076 - GenProxyRequestHeadersString: header X-Forwarded-Server: rproxy.XXX.org
Fri Feb 04 08:29:56 -  3076 - GenProxyRequestHeadersString: header X-Forwarded-For: 222.222.222.222
Fri Feb 04 08:29:56 -  3076 - GenProxyRequestHeadersString: header Connection: Keep-Alive
Fri Feb 04 08:29:56 -  3076 - GenProxyRequestHeadersString: header Accept: */*
Fri Feb 04 08:29:56 -  3076 - GenProxyRequestHeadersString: header Accept-Encoding: gzip, deflate
Fri Feb 04 08:29:56 -  3076 - GenProxyRequestHeadersString: header Accept-Language: en-gb
Fri Feb 04 08:29:56 -  3076 - GenProxyRequestHeadersString: header X-Forwarded-Host: rproxy.XXX.org
Fri Feb 04 08:29:56 -  3076 - GenProxyRequestHeadersString: header User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; MS-RTC LM 8; AskTbFXTV5/5.9.1.14019)
Fri Feb 04 08:29:56 -  3076 - GenProxyRequestHeadersString: header UA-CPU: x86
Fri Feb 04 08:29:56 -  3076 - GenProxyRequestHeadersString: header X-NovINet: v1.2
Fri Feb 04 08:29:56 -  3076 - ProxyRequest: WinHttpConnect apps.XXX.org 443
Fri Feb 04 08:29:56 -  3076 - ProxyRequest: WinHttpOpenRequest: GET /svcs/test/time
Fri Feb 04 08:29:56 -  3076 - ProxyRequest: WinHttpAddRequestHeaders
Fri Feb 04 08:29:56 -  3076 - ProxyRequest: WinHttpSendRequest
Fri Feb 04 08:29:56 -  3076 - Cached: DLL_THREAD_DETACH
Fri Feb 04 08:29:56 -  3076 - ProxyRequest: WinHttpReceiveResponse
Fri Feb 04 08:29:56 -  3076 - ProxyRequest: WinHttpQueryHeaders
Fri Feb 04 08:29:56 -  3076 - ProxyRequest: WinHttpQueryHeaders: status 302
Fri Feb 04 08:29:56 -  3076 - GetServerVariable: getting 'SERVER_PORT'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable: 3 bytes
Fri Feb 04 08:29:56 -  3076 - GetServerVariable: result '80'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable: getting 'HTTPS'
Fri Feb 04 08:29:56 -  3076 - GetServerVariable: 4 bytes
Fri Feb 04 08:29:56 -  3076 - GetServerVariable: result 'off'
Fri Feb 04 08:29:56 -  3076 - Proxy_SetResponseHeaders: starting status 302
Fri Feb 04 08:29:56 -  3076 - Proxy_SetResponseHeaders: status NOT 200, not TIMEOUT
Fri Feb 04 08:29:56 -  3076 - Proxy_SetResponseHeaders: status string '302'
Fri Feb 04 08:29:56 -  3076 - ConstructPprHeader: compare loc(https://sso.XXX.org:5443/pls/orasso/orasso.wwsso_app_admin.ls_login?Site2pstoreToken=v1.4[longtoken]) pprurl(https://apps.XXX.org/svcs/$1) len(33)
Fri Feb 04 08:29:56 -  3076 - ConstructPprHeader: no match
Fri Feb 04 08:29:56 -  3076 - ProcessResponseHeaders: Allocate  698
Fri Feb 04 08:29:56 -  3076 - ConstructPprHeader: compare loc(https://sso.XXX.org:5443/pls/orasso/orasso.wwsso_app_admin.ls_login?Site2pstoreToken=v1.4[longtoken]) pprurl(https://apps.XXX.org/svcs/$1) len(33)
Fri Feb 04 08:29:56 -  3076 - ConstructPprHeader: no match
Fri Feb 04 08:29:56 -  3076 - ProcessResponseHeaders: transform old 'Location: https://sso.XXX.org:5443/pls/orasso/orasso.wwsso_app_admin.ls_login?Site2pstoreToken=v1.4[longtoken]'
Fri Feb 04 08:29:56 -  3076 - ProcessResponseHeaders:           new 'Location: https://sso.XXX.org:5443/pls/orasso/orasso.wwsso_app_admin.ls_login?Site2pstoreToken=v1.4[longtoken]'
Fri Feb 04 08:29:56 -  3076 - ProcessResponseHeaders: keep       'Content-Type: text/html; charset=iso-8859-1'
Fri Feb 04 08:29:56 -  3076 - ProcessResponseHeaders: keep       'Connection: Keep-Alive'
Fri Feb 04 08:29:56 -  3076 - ProcessResponseHeaders: keep       'Keep-Alive: timeout=5, max=999'
Fri Feb 04 08:29:56 -  3076 - ProcessResponseHeaders: keep       'Content-Length: 948'
Fri Feb 04 08:29:56 -  3076 - ProcessResponseHeaders: keep       'Date: Fri, 04 Feb 2011 07:29:57 GMT'
Fri Feb 04 08:29:56 -  3076 - ProcessResponseHeaders: add        'Via: 1.1 111.111.111.111 (IIRF v2.1)'
Fri Feb 04 08:29:56 -  3076 - ProcessResponseHeaders: all Location: https://sso.XXX.org:5443/pls/orasso/orasso.wwsso_app_admin.ls_login?Site2pstoreToken=v1.4~[longtoken]

Content-Type: text/html; charset=iso-8859-1

Connection: Keep-Alive

Keep-Alive: timeout=5, max=999

Content-Length: 948

Date: Fri, 04 Feb 2011 07:29:57 GMT

Via: 1.1 111.111.111.111 (IIRF v2.1)



Fri Feb 04 08:29:56 -  3076 - ProxyRequest: WinHttpReadData 319
Fri Feb 04 08:29:56 -  3076 - ProxyRequest: WinHttpReadData nRead= 319
Fri Feb 04 08:29:56 -  3076 - ProxyRequest: WinHttpReadData 403
Fri Feb 04 08:29:56 -  3076 - ProxyRequest: WinHttpReadData nRead= 403
Fri Feb 04 08:29:56 -  3076 - ProxyRequest: WinHttpReadData 226
Fri Feb 04 08:29:56 -  3076 - ProxyRequest: WinHttpReadData nRead= 226
Fri Feb 04 08:29:56 -  3076 - ProxyRequest: chunks(3) totalBytes(948)
Fri Feb 04 08:29:56 -  3076 - DoRewrites: Proxy complete: 3 chunks, 948 bytes'
Fri Feb 04 08:29:56 -  3076 - HttpFilterProc: SF_NOTIFY_LOG
Fri Feb 04 08:29:56 -  3076 - ReleaseOrExpireVdirConfig: vdir '/LM/W3SVC/1/ROOT' (era=0) (rc=0) (Expired=0) (ptr=0x01CC5010)...
---8<---

Feb 4, 2011 at 2:39 PM

Hi Cheeso,

my colleagues just made a discovery. The erroneous behaviour seems to stem from the fact that Oracle uses a customized HTTP status message, namely: "HTTP/1.0 302 Redirect to Oracle SSO Server". The problem here seems to be the length of the message. Our tests showed that the following (32 characters) works fine:

   header("HTTP/1.0 302 Redirect to Oracle SSO Ser");

however the original message (34 characters) triggers an error:

   header("HTTP/1.0 302 Redirect to Oracle SSO Server");

I hope this helps you issuing a code fix.
 
 Thanks again for your support!
 
 Juergen
Coordinator
Feb 5, 2011 at 2:04 AM

Very helpful, thanks.   I'll file a workitem and get it fixed.

Coordinator
Feb 5, 2011 at 2:07 AM
This discussion has been copied to a work item. Click here to go to the work item and continue the discussion.