ruby-on-rails - Rails (4.2.0) 服务器对浏览器请求无响应

标签 ruby-on-rails ruby rubygems

无法连接到 ipaddress:3000 上的 Rails 服务器。服务器上的端口 3000 已打开。来自浏览器的初始 http 获取到达端口 3000,从 tcpdump 可以明显看出。

但 WEBrick 控制台中没有任何事件,就停在这里 -

=> Booting WEBrick
=> Rails 4.2.0 application starting in development on http://localhost:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
[2015-01-15 15:43:07] INFO  WEBrick 1.3.1
[2015-01-15 15:43:07] INFO  ruby 2.2.0 (2014-12-25) [x86_64-linux]
[2015-01-15 15:43:07] INFO  WEBrick::HTTPServer#start: pid=3072 port=3000

没有来自 RVM 或 Rails 的明显错误消息。

浏览器显示“此网页不可用”。 错误代码:ERR_CONNECTION_REFUSED

rvm 信息 -

ruby-2.2.0:

  system:
    uname:       "Linux <> 2.6.32-504.3.3.el6.x86_64 #1 SMP Wed Dec 17 01:55:02 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux"
    system:      "centos/6/x86_64"
    bash:        "/bin/bash => GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu)"
    zsh:         " => not installed"

  rvm:
    version:      "rvm 1.26.9 (latest) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]"
    updated:      "43 minutes 5 seconds ago"
    path:         "/home/deploy/.rvm"

  ruby:
    interpreter:  "ruby"
    version:      "2.2.0p0"
    date:         "2014-12-25"
    platform:     "x86_64-linux"
    patchlevel:   "2014-12-25 revision 49005"
    full_version: "ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-linux]"

  homes:
    gem:          "/home/deploy/.rvm/gems/ruby-2.2.0"
    ruby:         "/home/deploy/.rvm/rubies/ruby-2.2.0"

  binaries:
    ruby:         "/home/deploy/.rvm/rubies/ruby-2.2.0/bin/ruby"
    irb:          "/home/deploy/.rvm/rubies/ruby-2.2.0/bin/irb"
    gem:          "/home/deploy/.rvm/rubies/ruby-2.2.0/bin/gem"
    rake:         "/home/deploy/.rvm/rubies/ruby-2.2.0/bin/rake"

  environment:
    PATH:         "/home/deploy/.rvm/gems/ruby-2.2.0/bin:/home/deploy/.rvm/gems/ruby-2.2.0@global/bin:/home/deploy/.rvm/rubies/ruby-2.2.0/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/deploy/.rvm/bin:/home/deploy/.rvm/bin"
    GEM_HOME:     "/home/deploy/.rvm/gems/ruby-2.2.0"
    GEM_PATH:     "/home/deploy/.rvm/gems/ruby-2.2.0:/home/deploy/.rvm/gems/ruby-2.2.0@global"
    MY_RUBY_HOME: "/home/deploy/.rvm/rubies/ruby-2.2.0"
    IRBRC:        "/home/deploy/.rvm/rubies/ruby-2.2.0/.irbrc"
    RUBYOPT:      ""
    gemset:       ""

默认 Gemfile -

source 'https://rubygems.org'

gem 'rails', '4.2.0'
gem 'sqlite3'
gem 'sass-rails', '~> 5.0'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.1.0'
gem 'execjs'
gem 'jquery-rails'
gem 'turbolinks'
gem 'jbuilder', '~> 2.0'
gem 'sdoc', '~> 0.4.0', group: :doc

group :development, :test do
  gem 'byebug'

我为配置 Rails 服务器做了什么 -

gpg --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3
\curl -sSL https://get.rvm.io | bash -s stable --ruby
source ~/.rvm/scripts/rvm

sudo yum install -y sqlite-devel.x86_64 libdbi-dbd-sqlite.x86_64 libxml2-devel.x86_64 libxslt-devel.x86_64 sqlite-devel

curl -sL https://rpm.nodesource.com/setup | bash -
yum install -y nodejs
yum groupinstall 'Development Tools'
wget http://nodejs.org/dist/node-latest.tar.gz
tar xvfvz node-latest.tar.gz

cd node-v0.10.35 
./configure
make
sudo make install

sudo yum install -y postgresql.x86_64 postgresql-devel.x86_64 postgresql-libs.x86_64

gem install rails
gem install sqlite3
rvm 2.2.0 do gem install jquery-rails
rails new <test_app>
rails server

一个简单的 javascript 服务器在同一个系统上运行。所以不是操作系统配置/防火墙问题。

此外,与 Ruby 2.1.5 和 2.0.0、Rails 4.2.0 和最新的稳定 RVM 的行为相同。

最佳答案

这有效-

rails server -b 0.0.0.0 -p 3000

一旦正确定义了问题,就在这里找到了解决方案 -

https://serverfault.com/questions/625841/cant-access-ports-assigned-to-rails-4-2-but-4-04-works-fine

关于ruby-on-rails - Rails (4.2.0) 服务器对浏览器请求无响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27974781/

相关文章:

ruby-on-rails - Amazon Cloudfront 是否隐藏文件以防止直接下载?

ruby-on-rails - 将 ActionCable 连接到不同的主机

ruby-on-rails - 如何在普通(非 ROR)Ruby 文件中使用 Ruby on Rails 函数

ruby - ruby 如何找到 gem ?

ruby - jRuby,带有 C 扩展的 gem

ruby-on-rails - 在 Rails 应用程序中实现 Koala Gem 时未定义的方法 `get_access_token'

ruby-on-rails - 在单元和功能测试中使用来自 rake 的种子值

ruby-on-rails - 如何使用 Rails 中的 Carrierwave 将 PDF 的第一页作为图像获取?

ruby-on-rails - Nokogiri 在服务器和本地主机上解析不同

ruby-on-rails - 如何获取铁路中所有国家和城市的列表?