We are running a Galaxy installation (v16.01#5677c2ee4fce70c9898ea5e6cae125b6147ae36a) behind a reverse proxy. The proxy serves over HTTPS and sets x-url-scheme
to https
as per the documentation. Galaxy is serving over HTTP on another server, which the proxy connects to.
Clicking "Install to Galaxy" for any tool results in the browser trying to load admin_toolshed/prepare_for_install
over HTTP, which is blocked by the browser due to mixed insecure / secure content. This is most likely due to the request to the toolshed at repository/find_tools
being sent the parameter ?galaxy_url=http://server-name.tld
instead of ?galaxy_url=https://server-name.tld
.
In lib/galaxy/webapps/galaxy/controllers/admin_toolshed.py
it looks like routes.url_for
is being called (via Galaxy classes) and creates a URL with the correct hostname (e.g., server-name.tld
) but does not get the correct protocol for some reason.
Does anybody know whether there is anything else we need to configure to get tools installing with this setup? I have not found anyone with the same issue on Google / mailing lists (yet!).