Geoserver 代理基本 URL 不用于图层预览

Posted

技术标签:

【中文标题】Geoserver 代理基本 URL 不用于图层预览【英文标题】:Geoserver Proxy Base URL doesn't take for Layer Previews 【发布时间】:2021-10-08 15:13:17 【问题描述】:

我已经配置了一个 GeoServer 用于在 Ubuntu 20.04 上进行测试 (2.19.2)。它可以通过 nginx 反向代理在 SSL 上使用,我可以通过预期地址 https:// 访问 Web 界面。代理基础 URL 在 GeoServer Web 界面设置中设置为相同的地址。据我了解,这是需要配置的,以便所有 Web 界面功能都能正常工作。但是,图层预览似乎仍然指向 127.0.0.1:8080。 可能还有其他功能不起作用,但我还没有发现。

为了确保 https:// 是应用的 Base Url,还需要进行哪些其他配置?

有趣的是,集成的 GeoWeb 缓存“演示”页面可以正确启动 OpenLayers 预览。

【问题讨论】:

似乎某些表单按钮也提交到127.0.0.1:8080,而不是在 GeoServer 全局设置页面中配置的代理基本 URL 地址。例如,尝试以管理员身份登录。在这一点上,我认为这与 Nginx 或 SSL 没有任何关系。 CSRF 也配置正确。除此之外,还需要设置白名单和代理基本网址(并选择“使用代理网址的标头”)吗?这几天我一直在尝试解决这个问题,但没有成功。 【参考方案1】:

好的,所以做的事情似乎违背了我所见过的所有其他解决方案,为我解决了这个问题。只需在 Geoserver 全局设置中删除 Proxy Base Url 就可以了。我测试过的所有东西现在似乎都可以正常工作了。不能说我明白为什么,但在这一点上,我会接受的。

【讨论】:

您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center。 请注意,删除 Proxy Base Url 会导致在服务的功能文档中发布错误的 Url(使用反向代理服务器调用的 Url)。

以上是关于Geoserver 代理基本 URL 不用于图层预览的主要内容,如果未能解决你的问题,请参考以下文章

Openlayers 样式不适用于某些 Geoserver WFS 图层(块状)

通过SLD_BODY动态改变geoserver的图层样式

geoserver 可以发布路径分析服务吗

通过sqlview动态发布地图图层

可以一步添加多个图层到 GeoServer 吗?

GeoServer中配置的图层使用OpenLayers为啥读不出来