rails serverで起動しようとしたところ、下記のエラーが発生しました。
/usr/local/lib/ruby/gems/2.4.0/gems/puma-3.4.0/lib/puma/binder.rb:255:in `initialize': getaddrinfo: nodename nor servname provided, or not known (SocketError)
ruby
1 # Tell the server to listen on host +host+, port +port+. 2 # If +optimize_for_latency+ is true (the default) then clients connecting 3 # will be optimized for latency over throughput. 4 # 5 # +backlog+ indicates how many unaccepted connections the kernel should 6 # allow to accumulate before returning connection refused. 7 # 8 def add_tcp_listener(host, port, optimize_for_latency=true, backlog=1024) 9 host = host[1..-2] if host and host[0..0] == '[' 10 s = TCPServer.new(host, port) #ここでエラー発生 11 if optimize_for_latency 12 s.setsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1) 13 end 14 s.setsockopt(Socket::SOL_SOCKET,Socket::SO_REUSEADDR, true) 15 s.listen backlog 16 @connected_port = s.addr[1] 17 18 @ios << s 19 s 20 end
"rails server -b 127.0.0.1" では問題なく起動できているため、IPアドレスのデフォルト値の読み出しがうまくいってないと思い、デフォルト値を確認しました。
rails s --help
-b, --binding=IP Binds Rails to the specified IP.
Default: localhost
上記のように、localhostに設定されているため、問題なく動作してくれそうに思うのですが、なぜかエラーになってしまう状況です。
rails側でlocalhostを127.0.0.1に変換してくれないのが原因でしょうか?
解決方法、エラーの原因について、どなたか詳しい方ご教示願います。
開発環境
macOC Sierra 10.12.1
ruby 2.4.0p0
rails 5.0.0.1
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/18 12:03