You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2014/05/14 03:24:15 UTC

[jira] [Commented] (TS-2650) Redirect handling enhancements in ATS

    [ https://issues.apache.org/jira/browse/TS-2650?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13997164#comment-13997164 ] 

ASF subversion and git services commented on TS-2650:
-----------------------------------------------------

Commit 9f2f83726624399d918c9d9cc29f0f1cd218a4d9 in trafficserver's branch refs/heads/master from [~zwoop]
[ https://git-wip-us.apache.org/repos/asf?p=trafficserver.git;h=9f2f837 ]

TS-2650 Undo some unecessary Debug statements


> Redirect handling enhancements in ATS
> -------------------------------------
>
>                 Key: TS-2650
>                 URL: https://issues.apache.org/jira/browse/TS-2650
>             Project: Traffic Server
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Sudheer Vinukonda
>            Assignee: Bryan Call
>              Labels: review, yahoo
>             Fix For: 5.0.0
>
>         Attachments: ts2650.diff, ts2650.diff, ts2650.diff, ts2650.diff, ts2650.diff
>
>
> This Jira attempts to enhance/fix multiple issues found with ATS's support for redirect follow. Below is a summary of issues:
> 1. Support relative path in the location header in the 301/302/303 response. 
> Description: Currently, if ATS receives a relative url path (with either the host or the scheme missing) in the location header in the 302 redirect request, it returns a "400 Host Header Required" error. This enhancement is to try the redirection with the current origin connection's host/scheme when that happens.
> 2. Strip off default ports from Host header during redirect follow. 
> Description: ATS includes port in the host header as host:port during redirect follow. It has been observed that some origins choke (and return 4xx error) when the default port (80/http, 443/https) is included within the host header. This enhancement is to strip off the default port (80/http, 443/https) from the host header during redirect follow. This behavior is controlled via a configuration parameter "proxy.config.http.redirect_host_no_port". When enabled, ATS will strip off the default port from the host header during redirect follow. Note that the default setting for proxy.config.http.redirect_host_no_port is disabled, which means, ATS will continue to include the port in the host header. 
> 3. Force DNS lookup during redirect follow
> Description: It has been observed that, ATS doesn't perform a DNS lookup during redirect follow. This may work when the host is unchanged during redirect follow, but, will fail if the host is changed. This fix forces dns lookup (either by way of hostdb lookup or an altogether new dns lookup) during redirect follow
> 4. Handle null path correctly during redirect follow
> Description: It has been observed that, if a subsequent redirect follow includes null path (e.g. /), ATS incorrectly uses the path received during a previous redirect request. This fix resets the path during each redirect to ensure that the path is correctly set to the newly received value.
> 5. Cache not working during redirect 
> Description: It has been observed that ATS is not writing to cache the final response at the end of a successful 3xx redirect follow. This fix is to force ATS write to cache a valid non-3xx response received at the end of a redirect follow.
> 6. Support 303 status code to trigger redirect follow
> Description: Currently, ATS supports only 301/302 based redirect follow. This enhancement is to also handle 303 based redirect follow. Note that, in terms of the response and redirect follow handling, 303 handling is identical to 301/302, except for the status code.
> 7. SEND_RESPONSE_HDR_HOOK plugin breaks redirect follow:
> Description: Currently, when a plugin enables SEND_RESPONSE_HDR_HOOK, ATS has a bug that breaks redirect handling. This fix is to allow redirect handling to be completed (unto the configured max number of attempts) before invoking the plugin with SEND_RESPONSE_HDR_HOOK.



--
This message was sent by Atlassian JIRA
(v6.2#6252)