gpt4 book ai didi

c# - 由于循环负载平衡器,用户正在退出网站

转载 作者:太空狗 更新时间:2023-10-29 23:40:08 25 4
gpt4 key购买 nike

我们的运营商在我们的门户网站上实现了循环负载均衡器,它似乎导致了一些我无法深入了解的问题。

我能够识别我们在哪个服务器上,并且当我们浏览站点时,我们停留在服务器 A 上。如果我离开它 5 分钟并尝试另一个页面,我将被推送到服务器 B,然后注销并显示登录页面。

我让他们确保 machine.config 中的 MachineKey 在两台服务器上相同,并且我在本地测试过 session 未被使用 - 我可以在本地完全关闭 session 并且它仍然存在作品。我已经在两台服务器上验证它正在域上创建一个 ASPXAUTH cookie,因此我们应该在两台服务器上都被归类为经过身份验证 - 但每次我更改服务器时都会丢失我的身份验证。

关于可能导致注销的原因有什么想法吗?我猜这是我对 ASPXAUTH 工作原理的误解。

最佳答案

session 与表单例份验证分开处理。这个有很好的解释 here .

表单例份验证在负载平衡环境中失败的最常见原因是缺少 MachineKey 元素的同步。您已经声明您已经让服务器运算符(operator)确保 MachineKey 是同步的,但是您是否以某种方式自己验证了这一点?所有网络服务器都是这种情况吗?从之前与几个商业网络主机的交易中,我发现(不幸的是)很难相信他们的保证。

要检查的另一件事是所有主机上的 FormsAuthentication 配置(超时、路径、名称等)是否相同。

所有主机上的补丁级别都一样吗?您可能想查看兼容性开关是否提到了 here适用于您的情况。

假设托管设置是正确的,也许您在页面上有初始化代码,如果不满足某些条件,您将注销?

尝试查看服务器日志并跟踪失败页面请求期间涉及的 HTTP 请求序列。这可能会产生线索。

编辑:这份排除表单例份验证问题的指南非常详细,而且很有帮助:Troubleshooting Forms Authentication

关于c# - 由于循环负载平衡器,用户正在退出网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13728192/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com