ruby-on-rails - 奇怪的 Spree 登录问题 - 可能与 cookie、浏览器、NGINX 相关

标签 ruby-on-rails cookies nginx spree

我们目前遇到一个非常奇怪的问题,该问题发生在 NGINX 上运行的 Spree 安装上。用户报告了恢复密码的问题,一旦恢复就无法登录网站。我们无法重现此错误,但由于我们收到的所有用户报告,我们知道它肯定会发生。另外,用户在尝试使用不同的浏览器时也无法登录。如果第一次尝试是在 Firefox 中,然后他们尝试使用 Chrome,那么 chrome 最终会在很多情况下正常工作。

来自用户的电子邮件: “仍然无法购物。我已经更改了两次密码,当我输入密码时什么也没有发生。它只是刷新了页面,留下了用于电子邮件和密码的空白点。”

NGINX 错误日志中的错误:

cache: [GET /login] miss
cache: [POST /user/sign_in] invalidate, pass

配置: Rails 3.1,Spree 1,passenger-3.0.11,ruby 1.8.7 REE

非常感谢任何和所有的答案/建议。

最佳答案

两个 Rails 应用程序同时在一个域和一个子域上运行,浏览器与文件 session_store.rb 中设置的 session cookie 发生冲突,该文件具有相同的 key ,并且如果用户拥有示例中的 cookie,则不允许用户登录-domain.com 或分别为 shop.sample-domain.com。

关于ruby-on-rails - 奇怪的 Spree 登录问题 - 可能与 cookie、浏览器、NGINX 相关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10804615/

相关文章:

ruby-on-rails - 通过推特发送omniauth 请求电子邮件

ruby-on-rails - 如何为 FasterCSV 预处理 CSV 数据?

javascript - 如何以编程方式获取 Google Analytics 中当前访问的事件/来源/媒介

python - Gunicorn 和 Flask 蓝图

google-chrome - Chrome 忽略 ETag header ,只使用内存缓存/磁盘缓存

ruby-on-rails - 在 Capybara 中选择混合模式内容

angularjs - 请求中的请求头和 cookie 中的 CSRF token 不匹配

php - 快速提问 : How to set a cookie that will expire after 90days in PHP?

ruby-on-rails - 有子文件夹显示index.html - Rails/nginx

ruby-on-rails - 无法在 Webpacker 中的 vuex 突变测试中导入 vue.esm.js