1、Nginx代理配置
location ^~/geoserver/ {
proxy_pass http://127.0.0.1:8080/geoserver/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Host $host;
proxy_redirect off;
if ($request_method = 'OPTIONS') {
return 204;
}
}
2、GeoServer设置(版本2.26.1)
登录geoserver,找到【设置->全局->Service Settings->Proxy Base URL】
将Proxy Base URL设置为【https://域名/geoserver】,并勾选【Use headers for Proxy URL】
例如:
注意:在网上查的资料都是说这个Proxy Base URL后面不要加geoserver,但是亲测,还是需要增加。
如果设置Proxy Base URL后,登录异常,可以去GeoServer的部署目录下面的【data_dir/global.xml】中清空此配置
修改【/path_to_geoserver/webapps/geoserver/WEB-INF/web.xml】,增加配置:
<context-param>
<param-name>GEOSERVER_CSRF_WHITELIST</param-name>
<param-value>demo.com</param-value> <!-- 你的域名,逗号分隔多域名 -->
</context-param>
(此外,可以根据情况,打开geoserver的跨域配置)
重启GeoServer服务