[ https://issues.apache.org/jira/browse/FELIX-5309?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15430666#comment-15430666 ]
Carsten Ziegeler commented on FELIX-5309: ----------------------------------------- FELIX-4420 originally was implemented by overwriting setHeader, it seems that has changed to overwrite both setHeader and sendRedirect. I think it still makes sense to overwrite both and apply the same logic. If setHeader is called with a relative path, its better to make it absolute using the correct protocol. Now I agree that if sendRedirect or setHeader is called with an absolute path, no rewriting should happen. I don't know why the rewriting is done nevertheless. I assume, it's because of the initial version relying on sendRedirect calling setHeader > SslFilter: sendRedirect does not support deliberate protocol changes on the > current host > ---------------------------------------------------------------------------------------- > > Key: FELIX-5309 > URL: https://issues.apache.org/jira/browse/FELIX-5309 > Project: Felix > Issue Type: Bug > Components: HTTP Service > Affects Versions: http.sslfilter-1.0.6 > Reporter: Konrad Windszus > > Consider the case where application A and B are running under the same domain > example.com. A is served by an Apache Felix (below https://example.com/A) and > only supports HTTPS (being terminated e.g. by a LoadBalancer in front). B is > served by some other application server (below https://example.com/B) and > only supports HTTP. > Now I create a link from A towards B with > {{HttpServletResponse.sendRedirect("http://example.com/B/somepath")}}. > This URL is automatically converted by the SslFilter to > {{https://example.com/B/somepath}} which is clearly not intended. > I think the sendRedirect(...) implementation of the SSLFilter from FELIX-4420 > is way too aggressive, because it will also rewrite absolute URIs already > containing a scheme. > Actually absolute URIs should never been rewritten by that filter, only > relative ones (starting with a "/"). -- This message was sent by Atlassian JIRA (v6.3.4#6332)