|# Adjust sessions so they work across subdomains|
|# This also will work if your app runs on different TLDs|
|# from: http://szeryf.wordpress.com/2008/01/21/cookie-handling-in-multi-domain-applications-in-ruby-on-rails/|
|# modified to work with Rails 2.3.0|
|base::Dispatcher.send :include, DispatcherExtensions|
|base.send :before_dispatch, :set_session_domain|
|# remove the port if there is one|
|domain = @env['HTTP_HOST'].gsub(/:\d+$/, '')|
|# turn "brendan.app.com" to ".app.com"|
|# and turn "app.com" to ".app.com"|
|domain = '.' + $1|
|@env['rack.session.options'] = @env['rack.session.options'].merge(:domain => domain)|
|ActionController.send :include, ActionControllerExtensions|
@findchris, great point and something that actually bit me just the other day. It's a tricky problem to solve in a truly correct and generalized fashion. I ended up just solving my specific problem (not a general solution).
Let me know if you come up with a solution to this. I'd love to see it!