[ 
https://issues.apache.org/jira/browse/COUCHDB-321?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12805767#action_12805767
 ] 

Damjan Georgievski commented on COUCHDB-321:
--------------------------------------------

In my opinion it would be better if Futon only uses relative urls. 
That way it'll not require any hacks nor admin configuration.

Here's a patch against 0.11.0b3fa3b673-git that implements this.

With this patch all except one tests pass when running directly on CouchDB.

Using Nginx as a proxy some of the tests fail regardless of if it's proxying on 
the root or on a usb-url, because Nginx rewrites url's (so any tests with 
test_suite_db%2Fwith_slashes fail). Also tests expecting the Server http header 
to be CouchDB fail too. The config.httpd.port == port check obviously fails too.


The oauth test is the only one that fails without the proxy, and it's because 
it creates externall urls (http://) to which this patch prepends ".." There are 
several ways to solve this, but I think .request should have an _external flag 
or something.

> Futon breaks when used with a reverse proxy
> -------------------------------------------
>
>                 Key: COUCHDB-321
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-321
>             Project: CouchDB
>          Issue Type: Bug
>          Components: Futon
>    Affects Versions: 0.9
>         Environment: Affects all platforms.
>            Reporter: Jack Moffitt
>            Priority: Minor
>         Attachments: futon.patch
>
>
> It is often convenient to reverse proxy CouchDB at a url like /couch.  
> Unfortunately, while CouchDB will work perfectly in this situation, Futon 
> cannot handle it as jquery.couch.js uses absolute URLs to access all CouchDB 
> functions.
> I've attached a small patch that fixes this problem by:
> 1. Adding a urlPrefix attribute to $.couch which it uses to construct its 
> URLs.
> 2. Adding logic to the futon.js constructor that figures out a suitable 
> prefix and sets $.couch.urlPrefix to use this.
> Any client code that makes use of $.couch will need to do something similar.  
> Since only the application and the adminstrator will know what the prefix 
> should be or how to deduce it, I didn't really know of a better way to handle 
> this.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to