我有一个制作应用程序以及一个临时应用程序。对于这个问题,让我们假设如下:
我的应用的每个用户也都有自己的子域名。实施例
将我的应用程序部署到heroku后,我从'staging.foo.com/login'登录,之后设计将我重定向到'user.foo.com'。我希望它重定向到'user.staging.foo.com',因为我使用了来自该域的URL。由于我被重定向到一个不正确的域,浏览器向我显示一条错误,指出服务器不可用。
以下是我的一些代码:
application_controller.rb
...
def after_sign_in_path_for(resource)
authenticated_root_url( subdomain: 'user' )
end
...
配置/环境/ staging.rb
...
config.action_controller.default_url_options = { host: 'staging.foo.com' }
...
配置/初始化/ session_store.rb
...
Rails.application.config.session_store :cookie_store, key: '_foo_session', domain: "staging.foo.com" , tld_length: 3
...
如果我在登录后手动输入'user.staging.foo.com'网址,我可以看到正确的根页面。关于我缺少什么的任何想法?
答案 0 :(得分:1)
改变这个:
config.action_controller.default_url_options = { host: 'staging.foo.com' }
对此:
config.action_controller.default_url_options = { domain: 'staging.foo.com' }