I want to serve 2 different domains on my rails application, let’s say http://A.com and http://B.com
When you type http://A.com in a browser to get one set of routes
inside the rails application (let’s say starting with index.html),
when you type http://B.com to get another set (starting with
default.html)
A complet isolation would be great, like 2 different routes.rb.
Is this possible? I use nginx and mongrel if is important.
But be sure to read the following discussion. Jamis says:
“You’ll notice, if you actually try to use it, that route generate is a
little wonky now, unless you use named routes exclusively. Route
generation is hard to make work with the host/domain/subdomain thing,
because route generation has no access to the request. In fact, route
generation does not generate the host portion of the URL; it generates
only the path. It’s a hard problem.”
Having worked on this problem last week, I can attest that what he
speaks the truth:-)
Incoming requests work fine, but url_for (and anything that uses it)
will be broken for any routes that share the same “signature”, and
you’ll have to hack in something to handle that problem.
Guys, the request routing plugin extends routing to support domains
and subdomains (among other things) and I would definitely recommend
it for this. The README and RDoc are quite sufficient. I have used it
in the past to provide things like per-domain theme support.
If you are using a named virtual host there may be some additional
nginx configuration for you to do.