GeoServer如何启用https

5
我正在使用位于localhost:80上的Apache Web服务器和从localhost:8080上的Tomcat提供的Geoserver。
我最近在Apache上安装了SSL证书,它工作得很好,除了我收到一条消息,说我有不安全的内容,我认为这些是GeoServer层。因此,现在我正在尝试为GeoServer启用SSL,并像这样拥有Openlayers内容:https://example.org:8080/geoserver,但仍然不确定最佳方法是什么。

您需要提供以下内容:a)httpd如何代理到Tomcat的详细信息;b)Tomcat中使用的连接器配置的详细信息;c)SSL配置的详细信息;以及d)报告为不安全的内容的详细信息。 - Mark Thomas
1
似乎问题中重复的gis.stackexchange链接已被移除。请考虑将其从问题中移除。 - Peter Scott
1个回答

0
我的建议是: 在Apache中添加一个(反向)代理,并配置您的Web应用程序,使其仅连接到代理GeoServer的Apache。
ProxyPass "/geoserver"  "http://localhost:8080/geoserver"
ProxyPassReverse "/geoserver"  "http://localhost:8080/geoserver"

这样,您只需要在防火墙中允许HTTPS,除非您在防火墙上启用端口8080,否则外部用户将无法访问GeoServer的Web界面。另请参见https://gis.stackexchange.com/q/4323/109339以获取更多详细信息。

请注意,您应该使用公共可达URL通过Apache设置GeoServer的https://docs.geoserver.org/stable/en/user/configuration/globalsettings.html#proxy-base-url,例如https://your-apache.com/geoserver - 否则,GeoServer生成的绝对URL(例如GetCapabilities)将以http://localhost:8080/geoserver开头(不再可达)。

如果您尚未使用Apache,则建议使用nginx。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接