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の機構がうごいていないようです。