Rails 3 與 Subdomain 的初次邂逅
終於成功解決掉這個問題了 … 在進行這個操作之前請先到 /etc/hosts
內手動新增對應:
127.0.0.1 site1.product.local site3.product.local
請務必寫上這樣,我一開始寫成 site1.local
時會一直發生找不到根目錄的問題,所以必須這樣寫。
然後要做的就是在 config/rotues.rb
內修改一下,加上 constraints({subdomain: "site1"}) do ... end
這樣,假設:
1 2 3 4 5 6 7 |
|
即可
但是必須注意的是,如果你原本是使用Namespace的話,就必須加上 scope module: :xxx
這個Block,如下:
1 2 3 4 5 6 7 8 9 10 11 |
|
如此一來,原本是 /site1/users
會變成 site1.product.local/users
並且指定到 app/controllers/site1/users_controller.rb
了。