ローカルDNSを使ってアクセスするとActionController::RoutingError が起こる
http://api.ローカルIPアドレス:3000 にアクセスできない の続きです。
dnsmasqを入れて、expand-hosts
を有効にしてアクセスはできるようになりました。
/etc/hosts
の内容
ローカルIPアドレス api.example.com
しかし、ActionController::RoutingError
が起こります。
RailsのAPIのルートは下記のように設定してあります。
namespace :api, path: '/', constraints: {subdomain: 'api'}, defaults: {format: 'json'} do
..
end
正常に値が返ってくるときには、ログに(例えばローカルPCからapi.localhost:3000
としてアクセスした場合)下記が出力されています。
Processing by コントローラ名#index as JSON
Parameters: {"subdomain"=>"api"}
api.example.com
でアクセスした場合、上記ログが出ていないのでうまくsubdomainの機構がうごいていないようです。