You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Geoserver从2.26升级至2.27后无法登录Web UI的问题

GeoServer 2.27.4升级后CSP登录报错解决方法

1. 内联样式被CSP拦截的解决

GeoServer 2.27.x默认启用基于nonce的Content-Security-Policy(CSP)规则,未携带对应nonce的内联样式会被阻止。在WEB-INF/web.xml中添加以下配置,放宽style-src规则:

<context-param>
  <param-name>GEOSERVER_CSP_RULES</param-name>
  <param-value>style-src 'self' 'unsafe-inline' 'nonce-${nonce}';</param-value>
</context-param>

2. j_spring_security_check违反form-action规则的解决

该问题源于反向代理下表单提交地址与CSP的'self'规则不匹配,需两步调整:

  • 完善CSRF白名单,包含完整访问协议(如http/https)和域名:
    <context-param>
      <param-name>GEOSERVER_CSRF_WHITELIST</param-name>
      <param-value>http://server.com,server.com</param-value>
    </context-param>
    
  • 调整CSP的form-action规则,显式允许目标域名,合并到之前的GEOSERVER_CSP_RULES中:
    <context-param>
      <param-name>GEOSERVER_CSP_RULES</param-name>
      <param-value>style-src 'self' 'unsafe-inline' 'nonce-${nonce}'; form-action 'self' http://server.com;</param-value>
    </context-param>
    

后续操作

  1. 保存修改后的web.xml
  2. 重启Tomcat服务
  3. 清除浏览器缓存后重新测试登录

注意:如果实际使用HTTPS访问,需将配置中的http://server.com替换为https://server.com

内容的提问来源于stack exchange,提问作者minisaurus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.11 13:33:13