简体   繁体   English

无法运行Rails服务器

[英]Can't run Rails server

I have a problem when i try to run the server using rails s 我尝试使用rails运行服务器时遇到问题

I'm using Windows, and this is the return: 我正在使用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>

My gemfile: 我的gemfile:

source ' https://rubygems.org ' 来源' 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' 

ruby 1.9.3p392 (2013-02-22) [i386-mingw32], Rails 3.2.12 , Gem 1.8.25 红宝石 1.9.3p392(2013-02-22)[i386-mingw32], Rails 3.2.12, Gem 1.8.25

Sorry for my english people 对不起我的英国人

EDITED 已编辑

I try using mongrel but i get the next in the cmd: 我尝试使用杂种,但我在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>'

尝试在tmp / pids / server.pid文件中添加一个随机编号(例如6532),然后启动webricks

Windows and Rails doesn't work usually as well as in other environments. Windows和Rails通常无法在其他环境中正常工作。 Best workaround Webbrick problems in Windows with Rails is to install another server for development. 带有Rails的Windows中,Webbrick的最佳解决方法是安装另一台服务器进行开发。 Mongrel is a good alternative. 杂种是一个很好的选择。 To install it: 要安装它:

gem install mongrel

And then to start the server 然后启动服务器

rails s mongrel

I encountered the same problem. 我遇到了同样的问题。 I discovered the easiest fix is actually just to delete the existing pid file in the application folder: 我发现最简单的解决方法实际上是删除应用程序文件夹中的现有pid文件:

del tmp\pids\*.*

Found this solution referring to this resource: [ https://github.com/rack/rack/issues/544][1] 找到了参考以下资源的解决方案:[ https://github.com/rack/rack/issues/544] [1 ]

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM