如何在 Rails 底下設定 Subdomain
現在網路流行 Subdomain ,也就是固定網址。像是這個 blog 的網址 http://lightyror.blogspot.com/ ,裡面的 lightyror 就是我在 Blogger 裡面設定的。基本上,如何設定固定網址是需要 DNS Record 儲存到 DB 的技術,像是 MyDNS 之類的技術,這裡 Ruby on Rails 搭不上邊。但是如果設定好固定網址的 DNS Mapping, request 到了 Ruby on Rails 的 Application,Ruby on Rails 要怎麼判斷 request 的 subdomain呢?
最簡單的方式直接使用 request.subdomain 變數來判斷。 今天一個 request http://abc.def.example.com/ ,request.subdomain[0] 就是 abc ,request.subdomain[1] 就是 def。
如果要比較有結構的方式,可以將 site 的 mapping 放在 DB 裡面。RailsTip 有一篇 Building A Multi-Site Application,裡面介紹可以使用 DHH 寫的 Subdmain 的 plugin AccountLocation 來做到這件事情。安裝方式是
延伸閱讀
最簡單的方式直接使用 request.subdomain 變數來判斷。 今天一個 request http://abc.def.example.com/ ,request.subdomain[0] 就是 abc ,request.subdomain[1] 就是 def。
如果要比較有結構的方式,可以將 site 的 mapping 放在 DB 裡面。RailsTip 有一篇 Building A Multi-Site Application,裡面介紹可以使用 DHH 寫的 Subdmain 的 plugin AccountLocation 來做到這件事情。安裝方式是
script/plugin install http://dev.rubyonrails.org/svn/rails/plugins/account_location/然後在程式裡面使用
include AccountLocation即可。
延伸閱讀
- Dynamic Subdomains
- Building A Multi-Site Application
- Running A MySQL-Based DNS Server: MyDNS
- MyDNS = MySQL + DNS
沒有留言:
張貼留言