1

railsを使用してサーバーを実行しようとすると問題が発生します

私はWindowsを使用していますが、これがリターンです。

C:\Blog\MyBlog>rails s
=> Booting WEBrick
=> Rails 3.2.12 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
Exiting
C:/Ruby193/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/server.rb:353:in `kill': Invalid argument (Errno::EINVAL)
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/server.rb:353:in `pidfile_process_status'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/server.rb:340:in `check_pid!'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/server.rb:246:in `start'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.12/lib/rails/commands/server.rb:70:in `start'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.12/lib/rails/commands.rb:55:in `block in <top (required)>'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.12/lib/rails/commands.rb:50:in `tap'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.12/lib/rails/commands.rb:50:in `<top (required)>'
        from script/rails:6:in `require'
        from script/rails:6:in `<main>'

C:\Blog\MyBlog>

私のgemfile:

ソース' https://rubygems.org '

gem 'rails', '3.2.12'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

gem 'sqlite3'


# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'

  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
  # gem 'therubyracer', :platforms => :ruby

  gem 'uglifier', '>= 1.0.3'
end

gem 'jquery-rails'

# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'

# To use Jbuilder templates for JSON
# gem 'jbuilder'

# Use unicorn as the app server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger
# gem 'debugger'

ルビー1.9.3p392(2013-02-22)[i386-mingw32]、Rails 3.2.12、Gem 1.8.25

私のイギリス人にごめんなさい

編集済み

私は雑種を使用しようとしましたが、cmdで次のものを取得します:

C:\Blog\MyBlog>rails s mongrel
Exiting
C:/Ruby193/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/handler/mongrel.rb:1:in
`require': cannot load such file -- mongrel (LoadError)
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/handler/mon
grel.rb:1:in `<top (required)>'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/handler.rb:
20:in `const_get'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/handler.rb:
20:in `block in get'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/handler.rb:
20:in `each'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/handler.rb:
20:in `inject'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/handler.rb:
20:in `get'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/server.rb:2
72:in `server'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.12/lib/rails/comma
nds/server.rb:59:in `start'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.12/lib/rails/comma
nds.rb:55:in `block in <top (required)>'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.12/lib/rails/comma
nds.rb:50:in `tap'
        from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.12/lib/rails/comma
nds.rb:50:in `<top (required)>'
        from script/rails:6:in `require'
        from script/rails:6:in `<main>'
4

3 に答える 3

3

tmp / pids / server.pidファイルにランダムなno(たとえば、6532)を追加してから、webricksを開始してみてください

于 2013-03-18T13:56:02.560 に答える
2

Windows と Rails は通常、他の環境と同様に機能しません。Rails を使用した Windows での Webbrick の問題に対する最善の回避策は、開発用に別のサーバーをインストールすることです。雑種は良い代替手段です。インストールするには:

gem install mongrel

そして、サーバーを起動します

rails s mongrel
于 2013-03-10T01:35:41.013 に答える
1

同じ問題が発生しました。最も簡単な修正方法は、実際にはアプリケーション フォルダー内の既存の pid ファイルを削除することであることがわかりました。

del tmp\pids\*.*

このリソースを参照して、このソリューションを見つけました: [ https://github.com/rack/rack/issues/544][1]

于 2015-01-13T16:12:08.850 に答える