2

当 Joomla!(1.5.26) 会话已过期,我重新登录,提交用户名和密码后,我收到此消息:“您当前登录到此站点的私人区域。” 如果我单击另一个内部链接,则重定向有效,但是如果我重新单击相同的返回 url 链接(我所在的会话已过期),我将重新获得上一条消息,但我已正确登录!我使用 Joomla!海基会。没有其他外部组件/模块/插件。

为了让它运行,我必须手动删除浏览器的缓存!

想法?

4

2 回答 2

2

刚刚发生在我身上,记得看到你的问题。我不知道您对 SEF 的影响是什么,但就我而言,本机 Joomla 网址“正常”工作:

http://mysite.com/?option=com_mycomponent&view=myview&Itemid=48

当我无意中排除了如下所示的“视图”时,它给了我与您遇到的相同的结果:

http://mysite.com/?option=com_nmm&Itemid=48

这向我表明您的 SEF 正在将友好的 url 转换为无效的 Joomla url。希望这可以帮助!Joomla知道您已登录,但缺少显示您所期望的任何内容所需的所有信息。

于 2012-07-14T16:56:00.567 回答
1

几个月后我明白了!!!Joomla!1.5.26 文件 /libraries/joomla/application/application.php 中的第 324 行注释以下行

/*
if (!$moved && strstr(strtolower($_SERVER['HTTP_USER_AGENT']), 'webkit') !== false) {
    // WebKit browser - Do not use 303, as it causes subresources reload (https://bugs.webkit.org/show_bug.cgi?id=38690)
    echo '<html><head><meta http-equiv="refresh" content="0;'. $url .'" /></head><body></body></html>';
}
else {
    // All other browsers, use the more efficient HTTP header method
    header($moved ? 'HTTP/1.1 301 Moved Permanently' : 'HTTP/1.1 303 See other');
    header('Location: '.$url);
}
*/

并且只离开

// All other browsers, use the more efficient HTTP header method
header($moved ? 'HTTP/1.1 301 Moved Permanently' : 'HTTP/1.1 303 See other');
header('Location: '.$url);

webkit 错误已解决。在这里检查:错误 38690 - 提交导致服务器重定向的 POST 会导致所有缓存的项目重新下载

于 2012-09-03T08:41:27.327 回答