aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGodfrey Chan <godfreykfc@gmail.com>2014-09-20 18:44:36 +0900
committerGodfrey Chan <godfreykfc@gmail.com>2014-09-22 01:04:42 +0900
commit5919cce0ded95a0c80dc8fc28d54cc146d855606 (patch)
tree33cefaf26a4f7d9670a6f2c55feaccb3d6c9123f
parent1a2e3a0431651a44ab39e0881237c182770e29ed (diff)
downloadrails-5919cce0ded95a0c80dc8fc28d54cc146d855606.tar.gz
rails-5919cce0ded95a0c80dc8fc28d54cc146d855606.tar.bz2
rails-5919cce0ded95a0c80dc8fc28d54cc146d855606.zip
Document that the default for `rails server -b` has changed
Fixes #16578
-rw-r--r--guides/source/4_2_release_notes.md15
-rw-r--r--railties/lib/rails/commands/server.rb6
2 files changed, 16 insertions, 5 deletions
diff --git a/guides/source/4_2_release_notes.md b/guides/source/4_2_release_notes.md
index 5aed0c9358..905db00d5c 100644
--- a/guides/source/4_2_release_notes.md
+++ b/guides/source/4_2_release_notes.md
@@ -177,6 +177,21 @@ class UsersController < ApplicationController
end
```
+### Default host for `rails server`
+
+Due to a [change in Rack](https://github.com/rack/rack/commit/28b014484a8ac0bbb388e7eaeeef159598ec64fc),
+`rails server` now listens on `localhost` instead of `0.0.0.0` by default. This
+should have minimal impact on the standard development workflow as both http://127.0.0.1:3000
+and http://localhost:3000 would continue to work as before on your own machine.
+
+However, with this change you would no longer be able to access the Rails server
+from a different machine (e.g. your development environment is in a virtual
+machine and you would like to access it from the host machine), you would need
+to start the server with `rails server -b 0.0.0.0` to restore the old behavior.
+
+If you do this, be sure to configure your firewall properly such that only
+trusted machines on your network can access your development server.
+
### Production logging
The default log level in the `production` environment is now `:debug`. This
diff --git a/railties/lib/rails/commands/server.rb b/railties/lib/rails/commands/server.rb
index c479e92ae0..e39f0920af 100644
--- a/railties/lib/rails/commands/server.rb
+++ b/railties/lib/rails/commands/server.rb
@@ -24,7 +24,7 @@ module Rails
opts.on("-p", "--port=port", Integer,
"Runs Rails on the specified port.", "Default: 3000") { |v| options[:Port] = v }
opts.on("-b", "--binding=IP", String,
- "Binds Rails to the specified IP.", "Default: 0.0.0.0") { |v| options[:Host] = v }
+ "Binds Rails to the specified IP.", "Default: localhost") { |v| options[:Host] = v }
opts.on("-c", "--config=file", String,
"Uses a custom rackup configuration.") { |v| options[:config] = v }
opts.on("-d", "--daemon", "Runs server as a Daemon.") { options[:daemonize] = true }
@@ -126,10 +126,6 @@ module Rails
puts "=> Rails #{Rails.version} application starting in #{Rails.env} on #{url}"
puts "=> Run `rails server -h` for more startup options"
- if options[:Host].to_s.match(/0\.0\.0\.0/)
- puts "=> Notice: server is listening on all interfaces (#{options[:Host]}). Consider using 127.0.0.1 (--binding option)"
- end
-
puts "=> Ctrl-C to shutdown server" unless options[:daemonize]
end