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

TYPO3与Siteimprove深度链接问题及跨窗口会话转移咨询

解决Siteimprove跳转TYPO3后台后丢失目标页面的问题

核心问题

新窗口打开Siteimprove生成的链接时,EXT:ig_ldap_sso_auth的SSO登录流程没正确保留redirect_url里的Siteimprove跳转参数,登录后直接跳转到后台首页;但同一窗口打开时,参数能在会话中正常传递,因此可以跳转到目标页面。

可行解决方案

  • 调整EXT:ig_ldap_sso_auth的参数传递逻辑
    找到扩展的Classes/Controller/LoginController.php,修改认证成功后的跳转逻辑:

    1. 优先读取请求中的redirect_url参数,而非直接跳转默认后台首页
    2. 确保参数内的tx_siteimprove_goto部分不被过滤,完整传递到跳转步骤
  • 修改Siteimprove链接格式
    调整原链接的参数顺序,避免嵌套redirect_url导致的参数丢失:
    原链接:

    https://www.domain.ch/typo3/index.php?redirect_url=/typo3/?tx_siteimprove_goto=page:160:0
    

    修改为:

    https://www.domain.ch/typo3/index.php?tx_siteimprove_goto=page:160:0&redirect_url=/typo3/
    

    也可以直接修改EXT:pxa_siteimprove的链接生成逻辑,让它输出这种格式的URL。

  • 开启TYPO3跨窗口会话共享
    在LocalConfiguration.php中添加以下配置,确保会话cookie在同域名窗口间正常传递:

    $GLOBALS['TYPO3_CONF_VARS']['BE']['cookieSameSite'] = 'Lax';
    $GLOBALS['TYPO3_CONF_VARS']['BE']['sessionDataHandler'] = 'TYPO3\\CMS\\Core\\Session\\SessionDataHandler';
    

    cookieSameSite设为Lax既保证跨窗口参数传递,又保留基础安全性。

  • 临时脚本 workaround
    使用Tampermonkey这类浏览器脚本自动处理登录后的跳转:

    1. 检测是否刚登录进入TYPO3后台首页,且之前的跳转链接包含tx_siteimprove_goto参数
    2. 提取该参数,构造跳转URL并自动执行跳转

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 16:27:22