ITop集成谷歌OpenID认证时跳转错误问题求助
ITop集成谷歌OpenID认证时跳转错误问题求助
大家好,我正在给托管的ITop实例配置「谷歌登录」功能,用的是官方的「Authentication with OpenID extension」,目前已经能正常显示“Login with Google”按钮,但账号验证完成后的跳转环节出了问题,想请各位帮忙排查:
已完成的配置操作
1. ITop后台配置修改
我通过ITop界面修改了全局配置文件,添加/调整了以下核心配置项:
'allowed_login_types' => 'form|hybridauth-Google|external|basic|token', // 新增hybridauth-Google作为允许的登录方式 // 其他原有配置... 'combodo-hybridauth' => array ( 'debug' => true, 'synchronize_user' => true, 'synchronize_contact' => true, 'default_organization' => 'my organization name', 'default_profile' => 'Portal User', 'portal_enabled' => false, 'redirect_url' => '/pages/UI.php', // 尝试修复重定向错误的配置 'providers' => array ( 'Google' => array ( 'enabled' => true, 'keys' => array ( 'id' => '谷歌控制台获取的Client ID', 'secret' => '谷歌控制台获取的Client Secret', ), 'scope' => 'email profile', ), // 其他社交媒体提供商配置(如Twitter、Facebook等)... ), // 其他原有配置...
2. 谷歌云控制台配置
- 在「已授权的 JavaScript 来源」中添加了
https://test.mydomain(注:test.mydomain是实际域名的占位符) - 在「已授权的重定向 URI」中添加了两个地址:
https://test.mydomain/env-production/combodo-hybridauth/landing.phphttps://test.mydomain/pages/UI.php?operation=hybridauth
遇到的具体问题
点击“Login with Google”按钮后,能正常跳转到谷歌账号验证页面,完成账号密码验证后,没有跳转到ITop仪表盘,反而被重定向到了这个错误地址:
https://test.mydomain.com/pages/exec.php?exec_module=itop-portal-base&exec_page=index.php&portal_id=itop-portal
访问该地址后,ITop抛出了关于Symphony框架PreferencesController的错误,但我已经确认服务器上这个控制器文件是实际存在的。
已尝试的无效解决方法
- 按照AI建议,将配置中的
portal_enabled设为false,并指定redirect_url为ITop的UI页面,但问题依旧 - 重启了运行ITop的Docker容器
- 清理ITop缓存,执行了命令:
docker exec ITop rm -rf /var/www/html/data/cache-* - 用浏览器无痕模式测试,排除本地缓存影响
目前我找不到相关的官方文档说明这个问题,也没搜到其他用户遇到类似情况的案例,实在摸不清哪里配置错了。有没有大佬成功配置过ITop的谷歌登录,或者能帮我指出问题所在?万分感谢!




