opengeospatial / ets-wms-client13

Repository for the Exectutable Test Suite for WMS Client 1.3.X
Other
1 stars 3 forks source link

Enable HTTPS support for generated URL #73

Open dstenger opened 9 months ago

dstenger commented 9 months ago

Originally reported by @robinhoutmeyers in https://github.com/opengeospatial/ets-wms-client13/issues/68#issuecomment-1877974356:

I also encountered a similar issue during a beta test for https://github.com/opengeospatial/ets-wms-client13/issues/66. Steps to reproduce:

=> although the test session console and the test results (after stopping the test) will recognize the fact that a GetCapabilities and GetMap requests were received, the display during the test is never updated.

bpross-52n commented 9 months ago

Imho, this issue is related to mixed content served by Teamengine, i.e. mixed http/https content. We will update the Teamengine instances to provide only https content.

bpross-52n commented 9 months ago

@dstenger It turns out that this can be solved via configuration of the proxy and Tomcat. A RemoteIpValve needs to be set in the server.xml so that the x-forwarded-proto hearder will be recognised by Tomcat, see here: https://stackoverflow.com/questions/5741210/handling-x-forwarded-proto-header-in-java-web-application

I added the following line to the ets-wms-client13 docker file:

RUN sed -i 's|\
  </Host>|\
    <Valve className="org.apache.catalina.valves.RemoteIpValve" \
      remoteIpHeader="X-Forwarded-For" \
      protocolHeader="X-Forwarded-Proto"/>\
  </Host>|' \
  /usr/local/tomcat/conf/server.xml

This header needs to be set in the proxy to the respective protocol. I used this for nginx: proxy_set_header X-Forwarded-Proto $scheme;. If https is requested now it is used for the tests without any necessary modification of the code.

dstenger commented 4 months ago

@robinhoutmeyers We updated the Beta environment. Can you please check if the problem still occurs?

robinhoutmeyers commented 6 days ago

This seems indeed fixed, thanks! Sorry for the late reply, I accidentally overlooked this.