Это не очень чисто, но это способ, которым вы можете получить порт, который вы объявили при вызове:
rails server -p portnumber
где вы хотите в вашем приложении (для рельсов 3).
Вот мой файл scripts / rails.rb:
#!/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.
ENV['PORT']=ARGV[3]
APP_PATH = File.expand_path('../../config/application', __FILE__)
require File.expand_path('../../config/boot', __FILE__)
require 'rails/commands'
Тогда всякий раз, когда вы хотите получить номер порта вашего сервера, все, что вам нужно сделать, это позвонить ENV['PORT']
.