当 phpCas 想要验证时无限重定向循环

Infinite redirect loop when phpCas wants authenticate

我用这个例子集成了我的 ZendFramework 1 项目。

require_once 'Cas/config.php' ;
require_once 'Cas/CAS.php' ;
phpCAS::setDebug("/var/www/html/tums/library/Cas/ooo.log");
phpCAS::setVerbose(true);
phpCAS::client(CAS_VERSION_2_0, $cas_host, $cas_port, $cas_context);
phpCAS::setNoCasServerValidation();
$auth = phpCAS::checkAuthentication();
if($auth)
    echo "Salam!";
else
{
    phpCAS::forceAuthentication();
    echo "bbbbbbbbbbbbbbbbbbbbbbb";
}

当用户未登录时 phpCAS 正确重定向到 CAS 登录页面,但当用户登录时 phpCAS::checkAuthentication() 重复无限重定向循环,直到浏览器停止。我在一个单独的简单 php 文件上 运行 上面的示例并且它工作正常但是当我将该代码复制到我的 Zend Framework 1 控制器时会发生这种情况(无限循环)。我该怎么办?

当我发现 this 对话时,我得出结论,我的项目无法从 URL 中删除票证并陷入无限重定向循环。因此我添加了

phpCAS::setNoClearTicketsFromUrl();

并从 URL 中手动删除票证。