1. ホーム
  2. ruby-on-rails

[解決済み] Rails 3 のサーバーのデフォルトポートを開発中に変更するには?

2022-04-24 22:47:39

質問

私の開発マシンでは、ポート10524を使用しています。ですから、私はこの方法でサーバーを起動します。

rails s -p 10524

デフォルトのポートを10524に変更して、サーバーを起動するたびにポートを追記する必要がないようにする方法はありますか?

解決方法は?

まず第一に、gemパスは一切編集しないでください! すべてのプロジェクトに影響を与え、後で多くの問題を抱えることになります...

プロジェクトで script/rails このように

#!/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'

原理は簡単で、サーバーランナーにモンキーパッチを適用しているのです。

アップデイト : はい、私はbashスクリプトを含むより簡単なソリューションがあることを知っています。

#!/bin/bash
rails server -p 10524

しかし、この解決策には重大な欠点があります。それは、地獄のように退屈だということです。