在我的开发机器上,我使用端口10524.所以我用这种方式启动服务器:

rails s -p 10524

有没有办法将默认端口更改为10524,这样我就不必每次启动服务器时都附加端口?

推荐答案

首先,不要在你的Ruby 路径中编辑任何东西!它会影响所有的项目,你以后会有很多问题...

在项目中,按以下方式编辑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'

原理很简单——你是在给服务器运行程序打补丁——所以它只会影响一个项目.

UPDATE:是的,我知道bash脚本有一个更简单的解决方案,它包含:

#!/bin/bash
rails server -p 10524

但是这个解决方案有一个严重的缺点——它非常无聊.

Ruby-on-rails相关问答推荐

带有rails 7.1的Lightbox2未初始化

删除链接不起作用,重定向 echo 示 Ruby

如何从数组中提取值

多行与内联块之间的不同行为

Rails 7 共享刺激控制器功能

使用 Ruby On Rails 的多个用户模型,并设计有单独的注册路由,但只有一个共同的登录路由

Rails 模型.有效吗?刷新自定义错误并错误地返回 true

rails 3 - link_to 销毁不工作

Rails 3 中的动态错误页面

如何在 Ruby on Rails 中的 cookie 上设置 HttpOnly 标志

从 Rails 模型内部访问翻译文件 (i18n)

设计自定义路由和登录页面

验证一个对象是否有一个或多个关联对象

如何检测导致 Rake 中的弃用警告的原因

设计:在注册期间禁用密码确认

设计/Rails - 如何删除特定的 Flash 消息? (登录成功)

# 轨道中的 TODO

用于在多行上链接调用的 Ruby 约定

如何在不触及 updated_at 属性的情况下更新单个属性?

是否可以输出rake db:migrate产生的 SQL 更改脚本?