jira.codehaus.org

  • Log In Access more options
    • Online Help
    • Keyboard Shortcuts
    • About JIRA
    • JIRA Credits
    • What?s New
  • Dashboards Access more options (Alt+d)
  • Projects Access more options (Alt+p)
  • Issues Access more options (Alt+i)
  • Continuum
  • CONTINUUM-240

Absolute links bypass mod_proxy

  • Log In
  • Views
    • XML
    • Word
    • Printable

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Minor Minor
  • Resolution: Won't Fix
  • Affects Version/s: 1.0-alpha-3
  • Fix Version/s: 1.0-alpha-4
  • Component/s: Web interface
  • Labels:
    None

Description

Continuum does not work with the mod_proxy config shown in site docs:

ProxyPass /continuum http://localhost:8080/continuum/
ProxyPassReverse /continuum http://localhost:8080/continuum/

All links in the continuum webapp are absolute, and ProxyPassReverse only does rewrite of headers, not page content.
This means that clicking on one of continuums links bypasses the proxy and goes directly to localhost:8080/continuum/.

There is a 3rd-party module (mod_proxy_html) that does rewrite of page content, but it seems like a waste of CPU cycles.
Making continuum generate relative links would probably be more efficient.

http://httpd.apache.org/docs-2.0/mod/mod_proxy.html#proxypassreverse

Issue Links

relates to

Bug - A problem which impairs or prevents the functions of the product. CONTINUUM-734 Can't use continuum behind https proxy

  • Major - Major loss of function.
  • Closed - The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.

Activity

Ascending order - Click to sort in descending order
  • All
  • Comments
  • Work Log
  • History
  • Activity
Hide
Permalink
Trygve Laugstol added a comment - 18/Jul/05 12:55 PM

This isn't really a issue but just a matter of configuration. Make sure you use the <proxy-http-listener> and the correct port in the mod_proxy configuration. I've updated the documentation.

Show
Trygve Laugstol added a comment - 18/Jul/05 12:55 PM This isn't really a issue but just a matter of configuration. Make sure you use the <proxy-http-listener> and the correct port in the mod_proxy configuration. I've updated the documentation.
Hide
Permalink
Anders Johan Jamtli added a comment - 27/Mar/06 12:30 PM

Relative URLs are usually a good idea.

Using HTTPS and mod_proxy seem to be a problem.
Since there is no proxy-https-listener, at least not that I can find, the connection between mod_proxy and continuum proxy listener has to be HTTP:

ProxyPass /continuum/ http://localhost:8090/continuum/
ProxyPassReverse /continuum/ http://localhost:8090/continuum/

And with the following proxy-http-listener configuration:

<listeners>
<proxy-http-listener>
<port>8090</port>
<proxy-host>www.test.com</proxy-host>
<proxy-port>443</proxy-port>
</proxy-http-listener>
</listeners>

Continuum will produce the following URLs:
http://www.test.com:443/continuum/css/tigris.css

which again result in a "400 Bad Request" because the browser is speaking plain HTTP to a HTTPS port.

Show
Anders Johan Jamtli added a comment - 27/Mar/06 12:30 PM Relative URLs are usually a good idea. Using HTTPS and mod_proxy seem to be a problem. Since there is no proxy-https-listener, at least not that I can find, the connection between mod_proxy and continuum proxy listener has to be HTTP: ProxyPass /continuum/ http://localhost:8090/continuum/ ProxyPassReverse /continuum/ http://localhost:8090/continuum/ And with the following proxy-http-listener configuration: <listeners> <proxy-http-listener> <port>8090</port> <proxy-host>www.test.com</proxy-host> <proxy-port>443</proxy-port> </proxy-http-listener> </listeners> Continuum will produce the following URLs: http://www.test.com:443/continuum/css/tigris.css which again result in a "400 Bad Request" because the browser is speaking plain HTTP to a HTTPS port.
Hide
Permalink
Jens Reimann added a comment - 18/Aug/06 6:41 AM

Is there any progress here? This issue prevents me from using HTTPS. Not having HTTPS is a real problem when you need users to log in and transmit passwords!

Show
Jens Reimann added a comment - 18/Aug/06 6:41 AM Is there any progress here? This issue prevents me from using HTTPS. Not having HTTPS is a real problem when you need users to log in and transmit passwords!
Hide
Permalink
Jens Reimann added a comment - 18/Aug/06 7:33 AM

It looks like as if the following apache configuration can work around this bug:

<Location />
ProxyPass http://localhost:8090/continuum/
ProxyPassReverse http://localhost:8090/continuum/
SetOutputFilter proxy-html
ProxyHTMLURLMap http://localhost:80/continuum/ /
ProxyHTMLURLMap http://localhost/continuum/ /
</Location>

Using the following as webapp configuration:

<proxy-http-listener>
<port>8090</port>
<proxy-host>localhost</proxy-host>
<proxy-port>80</proxy-port>
</proxy-http-listener>

Interstingly both mappings must be configured since some generated URLs include the port while others do not. This is really ugly!!

Show
Jens Reimann added a comment - 18/Aug/06 7:33 AM It looks like as if the following apache configuration can work around this bug: <Location /> ProxyPass http://localhost:8090/continuum/ ProxyPassReverse http://localhost:8090/continuum/ SetOutputFilter proxy-html ProxyHTMLURLMap http://localhost:80/continuum/ / ProxyHTMLURLMap http://localhost/continuum/ / </Location> Using the following as webapp configuration: <proxy-http-listener> <port>8090</port> <proxy-host>localhost</proxy-host> <proxy-port>80</proxy-port> </proxy-http-listener> Interstingly both mappings must be configured since some generated URLs include the port while others do not. This is really ugly!!
Hide
Permalink
Jens Reimann added a comment - 18/Aug/06 8:04 AM

This is totally screwed up!

You need to add:

ProxyHTMLURlMap /continuum/images/ /images/

in order to get some of the images

Show
Jens Reimann added a comment - 18/Aug/06 8:04 AM This is totally screwed up! You need to add: ProxyHTMLURlMap /continuum/images/ /images/ in order to get some of the images
Hide
Permalink
Richard van der Hoff added a comment - 24/Aug/06 9:11 AM

Jens:

I agree wholeheartedly. It /is/ screwed up. The use of absolute urls is a right pain.

I don't want to install mod_proxy_html on my proxy (because it proxies lots of other, high-volume, stuff), so your workaround doesn't work for me.

Rather than commenting on a closed/wontfix issue, i started CONTINUUM-734 to track this.

Show
Richard van der Hoff added a comment - 24/Aug/06 9:11 AM Jens: I agree wholeheartedly. It /is/ screwed up. The use of absolute urls is a right pain. I don't want to install mod_proxy_html on my proxy (because it proxies lots of other, high-volume, stuff), so your workaround doesn't work for me. Rather than commenting on a closed/wontfix issue, i started CONTINUUM-734 to track this.

People

  • Assignee:
    Trygve Laugstol
    Reporter:
    Björn Sköld
Vote (0)
Watch (1)

Dates

  • Created:
    18/Jul/05 11:33 AM
    Updated:
    24/Aug/06 9:11 AM
    Resolved:
    18/Jul/05 12:55 PM
  • Atlassian JIRA (v5.0.4#731-sha1:3aa7374)
  • Report a problem
  • Powered by a free Atlassian JIRA open source license for Codehaus. Try JIRA - bug tracking software for your team.