如何为Webrick设置默认端口?

All*_*ate 7 ruby-on-rails webrick

我想设置默认端口

rails s
Run Code Online (Sandbox Code Playgroud)

到3010,而不是说:

rails s -p 3010
Run Code Online (Sandbox Code Playgroud)

...每次.有任何想法吗?

asi*_*rna 10

您可以Port通过添加以下代码来覆盖config/boot.rb

require 'rails/commands/server'
module Rails
  class Server
    alias :default_options_alias :default_options
    def default_options
      default_options_alias.merge!(:Port => 3010)
    end    
  end
end
Run Code Online (Sandbox Code Playgroud)

  • FWIW,Rails 4.2及更高版本现在默认只绑定到localhost而不是所有接口.如果需要从外部机器访问WEBrick,可以在上面的示例中使用`default_options_alias.merge!(:Host =>'0.0.0.0')`来恢复以前的功能. (6认同)