RE: [Bug] Enpoints have wrong paths when behind proxy

From: Mike Surcouf <mikes(at)surcouf(dot)co(dot)uk>
To: 'Ashesh Vashi' <ashesh(dot)vashi(at)enterprisedb(dot)com>, Florian Loeffler<florian(dot)loeffler(at)fau(dot)de>
Cc: "pgadmin-support(at)lists(dot)postgresql(dot)org"<pgadmin-support(at)lists(dot)postgresql(dot)org>
Subject: RE: [Bug] Enpoints have wrong paths when behind proxy
Date: 2017-08-17 15:08:23
Message-ID: 2197768425D7F5479A0FFB3FEC212F7FF5F27FC3@aesmail.surcouf.local
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-support

Will this be fixed in an updated 1.6 or 1.7

Thanks

Mike

From: Ashesh Vashi [mailto:ashesh(dot)vashi(at)enterprisedb(dot)com]
Sent: 25 July 2017 11:12
To: Florian Loeffler
Cc: pgadmin-support(at)lists(dot)postgresql(dot)org
Subject: Re: [Bug] Enpoints have wrong paths when behind proxy

On Tue, Jul 25, 2017 at 3:37 PM, Florian Loeffler <florian(dot)loeffler(at)fau(dot)de<mailto:florian(dot)loeffler(at)fau(dot)de>> wrote:
Hi list,

a bug to report, involving wrong paths generated for some resources when pgadmin4 is running behind a proxy and under a another context path than "/".
This leads to a non functional UI.

Version: pgadmin4-1.6-py2.py3-none-any.whl
OS: Ubuntu 16.04 LTS
Mode: Desktop

Steps to reproduce:
- Setup pgadmin4 to be running inside apache2 by following the documentation at
https://www.pgadmin.org/docs/pgadmin4/1.x/server_deployment.html#apache-httpd-configuration-linux-unix
- Change the WSGIScriptAlias line to contain a subcontext, e.g.
change
WSGIScriptAlias / /usr/local/lib/python2.7/dist-packages/pgadmin4/pgAdmin4.wsgi
to
WSGIScriptAlias /pgadmin4 /usr/local/lib/python2.7/dist-packages/pgadmin4/pgAdmin4.wsgi
- access localhost/pgadmin4 on your server
- multiple resources will not be accessible leading to some lements not functioning (eg. the "Add server" button)

Proposed fix:
- add the current context path to the endpoints generated in
pgadmin/browser/templates/browser/js/endpoints.js

Unfortunately I have not enough understanding about the code to provide a patch.
For me the fix was to just hardcode the "pgadmin4" path into the code line directly.
That means I have the follwing now:
'{{ endpoint|safe }}': '/pgadmin4{{ url|safe }}'{% endfor %}
Dave has committed a patch few minutes ago for the same.

commit 178d583bcd7390f3b1e47df6298d924059b21c86
Author: Murtuza Zabuawala <murtuza(dot)zabuawala(at)enterprisedb(dot)com<mailto:murtuza(dot)zabuawala(at)enterprisedb(dot)com>>
Date: Tue Jul 25 10:15:18 2017 +0100
Fix paths under non-standard virtual directories. Fixes #2563

--

Thanks & Regards,

Ashesh Vashi
EnterpriseDB INDIA: Enterprise PostgreSQL Company<http://www.enterprisedb.com/>

http://www.linkedin.com/in/asheshvashi

Hope this helps
Greetings
Flo

--
Florian Löffler, Zentrale Systeme
Regionales Rechenzentrum Erlangen (RRZE)
Friedrich-Alexander-Universität Erlangen-Nürnberg
Martensstraße 1, 91058 Erlangen, Germany
Tel. +49 9131 85-28146
florian(dot)loeffler(at)fau(dot)de<mailto:florian(dot)loeffler(at)fau(dot)de>
www.rrze.fau.de<http://www.rrze.fau.de>

In response to

Responses

Browse pgadmin-support by date

  From Date Subject
Next Message Florian Loeffler 2017-08-18 06:33:31 Re: [Bug] Enpoints have wrong paths when behind proxy
Previous Message Иванов Евгений Сергеевич 2017-08-14 07:27:40 Re: pgadmin4 ssl HELP!