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!).
