Primeiro - não edite nada no seu caminho de gema! Isso influenciará todos os projetos, e você terá muitos problemas mais tarde ...
No seu projeto, edite script/rails
desta maneira:
#!/usr/bin/env ruby
# This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application.
APP_PATH = File.expand_path('../../config/application', __FILE__)
require File.expand_path('../../config/boot', __FILE__)
# THIS IS NEW:
require "rails/commands/server"
module Rails
class Server
def default_options
super.merge({
:Port => 10524,
:environment => (ENV['RAILS_ENV'] || "development").dup,
:daemonize => false,
:debugger => false,
:pid => File.expand_path("tmp/pids/server.pid"),
:config => File.expand_path("config.ru")
})
end
end
end
# END OF CHANGE
require 'rails/commands'
O princípio é simples - você faz o patch do macaco no corredor do servidor - para que ele influencie apenas um projeto.
UPDATE : Sim, eu sei que existe uma solução mais simples com o script bash que contém:
#!/bin/bash
rails server -p 10524
mas essa solução tem uma séria desvantagem - é chata como o inferno.
config/puma.rb
se estiver rodando servidor puma padrão