负载均衡后出现一个很典型的现象:管理员登录成功,点两下菜单又回登录页;固定到node-a就正常,node-b必掉。这里先别调Cookie lifetime,先确认两台机器是不是同一个Magento实例。
sha256sum app/etc/env.php grep -n "crypt\|session" app/etc/env.php php -v php -m | sort
不能把完整crypt key打印到工单里,只比较哈希或配置管理中的版本。两台节点必须使用相同的crypt key、相同的Session后端和数据库。一个节点用Redis,另一个还在files,本地登录当然无法跨节点。
Redis也可能“看起来相同”
host一样不代表db和prefix一样。检查session保存的database、compression、locking与连接参数。部署时如果一台节点漏了新env.php,最容易出现时好时坏。
redis-cli -h <host> -n <db> INFO keyspace redis-cli -h <host> -n <db> --scan --pattern '*sess*' | head
再看Cookie Domain、Path、Secure以及代理传来的HTTPS头。两台节点生成的后台Base URL不同,也会把Cookie作用域搞乱。最终测试要关闭粘性会话,让同一登录连续落到不同节点;能稳定打开配置页、保存一条无害设置,才算真的好了。

