【问题标题】:session_store initializer working in production, but not developmentsession_store 初始化程序在生产中工作,但不在开发中
【发布时间】:2012-09-18 19:35:54
【问题描述】:

我有一个包含多个子域的站点,并已将:domain => :all 添加到我的会话存储中,如下所示,以便我的登录信息在所有子域中持续存在。

`MyApp::Application.config.session_store :cookie_store, key: '_MyApp_session', :domain => :all`

虽然这似乎在生产中有效,但在开发时我无法让我的会话跨域工作。这可能是什么原因造成的,我可以从我的配置或环境文件中添加/删除什么以使我的开发会话与我的生产会话匹配?

如果我需要检查特定的代码行,请告诉我,我会这样做(或将它们粘贴到此处)。 非常感谢您的反馈!

【问题讨论】:

  • 您使用哪些主机(地址)来访问开发和生产中的站点?检查这个帖子,excid3.com/blog/…
  • 这正是我想要的。我也在使用 lvh.me,所以很容易回答。 (事后似乎总是那么容易)。如果你输入这个(例如“在开发过程中使用“name_of_development_url”而不是“:all”),我会接受。谢谢!

标签: ruby-on-rails session initializer


【解决方案1】:

您可能只需要解决问题。

1) 检查是否是反引号引起了问题。

2) 检查是否有任何其他初始化程序或 Rails 相关的初始化问题导致应用程序在您的生产服务器上启动时无法加载。

【讨论】:

  • 谢谢@matsko。你说的反引号是什么意思?另外,关于您的第二点,会话设置正在生产中工作,但不在开发中。你知道任何可能导致这种情况的初始化问题吗?应用程序本身加载到两个环境中,但 session_store 初始化似乎只在生产中加载。
【解决方案2】:

我正在使用来自@dimuch 的link 的解决方案,并在生产期间将域设置为:all,并在开发期间将其设置为我的开发网址'lvh.me'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-20
    • 2011-10-29
    • 1970-01-01
    • 2011-02-18
    • 2015-08-05
    相关资源
    最近更新 更多