无法使用Rails 4中的设计登录

时间:2015-01-03 14:09:53

标签: ruby-on-rails apache devise

我已经在我的本地主机上完美地设计并运行。一旦我将它推送到服务器并设置为生产(apache / passanger),我就无法登录。我可以在服务器上使用生产webrick登录。

如果我输错密码,我的密码错误。当我使用正确的密码时,我重定向到登录重定向页面,但我还没有登录。

我正在使用有效记录会话,不确定这是否与问题有关。

登录成功,因为我可以在登录后更新当前用户统计信息的日志中看到,但是当新页面加载user_signed_in时?返回false。

以下是我在日志中看到的查询参考:

SQL (0.3ms)  UPDATE "users" SET "current_sign_in_at" = $1, "last_sign_in_at" = $2, "sign_in_count" = $3, "updated_at" = $4 WHERE "users"."id" = 1  [["current_sign_in_at", "2015-01-03 19:34:11.930934"], ["last_sign_in_at", "2015-01-03 19:29:33.496977"], ["sign_in_count", 18], ["updated_at", "2015-01-03 19:34:11.931889"]]

更新:我遇到了这个可能适用于其他人的解决方案: 在config / initializers / devise.rb中设置config.http_authenticatable = false。防止HTTP Auth从Apache干扰。这对我没有解决问题。

更新2 :我在某处读到这可能是由于apache配置问题导致的,而其他人则可以通过切换到nginx来修复它。对我来说很有意义,因为webrick即使在生产模式下也能正常工作。我做了开关,仍然有同样的问题。

任何帮助都将非常感激。我也会继续研究。

1 个答案:

答案 0 :(得分:0)

以下是为我解决的问题:

我正在运行ruby-2.0.0-p195,我升级到ruby-2.2.0

不知道为什么这有效,但确实如此。希望这有助于其他人。此外,如果您遇到类似问题,请查看我在更新中执行的故障排除步骤。也许这也会帮助你。