When ISA Server receives the HTTP 401 status from the Web server, ISA Server returns an "HTTP 302 Redirect" response to the client. This instructs the client to resubmit the request to a different URL. The different URL points to the original URL but with a tag appended onto it. For example, the request to http://
domain/test.htm may be redirected to the following appended URL:
http://domain/test.htm&authResendNNN
The "HTTP 302 Redirect" response includes a "Connection: Close" header. Therefore, the client will send the redirected request to ISA over a new session.
When the redirected request reaches ISA Server, the authentication delegation filter identifies the tag and then extracts the original URL. A new authenticated session is opened with the Web server by the delegation filter, and the original URL is sent over this session.
In this scenario, the following problems may occur:
- If the Web server returns a Cache header to enable response caching, the browser caches the tagged URL instead of the original URL. However, when the browser later tries to refresh the Web site, it uses the original URL.
- When the browser refreshes the Web site, it makes a conditional request. For example, the request may include conditional headers, such as if-modified-since and if-none-match. The Web server may respond with an "HTTP 304 (Not modified)" status. However, if the browser has not cached a tagged URL, it does not display anything when HTTP 304 is returned.