使用 SSL 登录 GeoServer 的问题
Issue with GeoServer login with SSL
我在 Centos 上安装了带有 ssl 的 tomcat apache,我已经将 GeoServer 作为 webapp 部署到 tomcat 中……当我通过 tomcat 访问 GeoServer 时
https://XXXX.XXXXXXXXX.com/geoserver/web/
并进入登录详细信息页面将被重定向到 http://localhost:8080/geoserver/j_spring_security_check,它应该用 https link
再次带我进入 GeoServer
折腾了3天,终于弄明白了。
您必须执行以下步骤才能使其正常工作:
- 进入apatche/webapps
里面的geoserver目录
- 打开web-inf里面的web.xml文件进行编辑
- 取消注释下面的标签并编辑值 tomcat main url as
下面:
<context-param>
<param-name>PROXY_BASE_URL</param-name>
<param-value>https://XXXXX.XXXXXXXXXX.XXXX/geoserver</param-value>
</context-param>
- 保存文件,一切正常。
这个问题可以通过JVM参数-DALLOW_ENV_PARAMETRIZATION=true
和环境变量PROXY_BASE_URL=https://XXXXX.XXXXXXXXXX.XXXX/geoserver
来解决。
在 kartoza/geoserver:2.20.1 上测试(来自 docker-compose.yml 的片段):
environment:
- JAVA_OPTS="-DALLOW_ENV_PARAMETRIZATION=true"
- PROXY_BASE_URL=https://XXXXX.XXXXXXXXXX.XXXX/geoserver
我在 Centos 上安装了带有 ssl 的 tomcat apache,我已经将 GeoServer 作为 webapp 部署到 tomcat 中……当我通过 tomcat 访问 GeoServer 时 https://XXXX.XXXXXXXXX.com/geoserver/web/ 并进入登录详细信息页面将被重定向到 http://localhost:8080/geoserver/j_spring_security_check,它应该用 https link
再次带我进入 GeoServer折腾了3天,终于弄明白了。 您必须执行以下步骤才能使其正常工作:
- 进入apatche/webapps 里面的geoserver目录
- 打开web-inf里面的web.xml文件进行编辑
- 取消注释下面的标签并编辑值 tomcat main url as 下面:
<context-param>
<param-name>PROXY_BASE_URL</param-name>
<param-value>https://XXXXX.XXXXXXXXXX.XXXX/geoserver</param-value>
</context-param>
- 保存文件,一切正常。
这个问题可以通过JVM参数-DALLOW_ENV_PARAMETRIZATION=true
和环境变量PROXY_BASE_URL=https://XXXXX.XXXXXXXXXX.XXXX/geoserver
来解决。
在 kartoza/geoserver:2.20.1 上测试(来自 docker-compose.yml 的片段):
environment:
- JAVA_OPTS="-DALLOW_ENV_PARAMETRIZATION=true"
- PROXY_BASE_URL=https://XXXXX.XXXXXXXXXX.XXXX/geoserver