论坛首页 编程语言技术论坛

windows下的rails2.02环境搭建指南

浏览 12997 次
精华帖 (1) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-12-29  
将自己在windowsXP下搭建运行环境的过程说一下,网上也有许多教程,但是大多是针对老版本的rails,没有最新的,还有win下为什么fastcgi+lighttpd还有scgi+lighttpd配合运行不起来,我个人总结了一下,如有错误,希望各位大大指教:

本文引用了诸多ror先辈们的经验文章,在此希望大大们不要见怪。我发这篇文章的目的也是为了后人少一些摸索,同时此文还发在railschina和railscn。
   发表时间:2007-12-29  
ROR本地安装


一、安装Ruby
1、下载Ruby(http://www.ruby-lang.org)安装包
   双击安装,安装过程中注意选中"Enable RubyGems"
2、打开"命令提示符cmd",输入"ruby -v"查看版本号,则表示ruby安装成功

二、安装Rails
1、下载JDK(http://java.sun.com/),安装,否则下面的"gem install"会提示错误
2、下载Rails(http://www.rubyonrails.org)  这里的版本为:rails-2.0.2.gem
3、下载Rails安装需要的库(http://rubyforge.org/),注意有版本依赖问题。
   这里的版本为:
   activesupport-2.0.2.gem
   activerecord-2.0.2.gem
   actionpack-2.0.2.gem
   actionmailer-2.0.2.gem
   activeresource-2.0.2.gem

   打开"命令提示符cmd"执行以下命令:
   gem install activesupport-2.0.2.gem
   gem install activerecord-2.0.2.gem
   gem install actionpack-2.0.2.gem
   gem install actionmailer-2.0.2.gem
   gem install activeresource-2.0.2.gem
   gem install rails-2.0.2.gem
   安装成功即可

   或者将上面所有的.gem放在一个目录中,然后直接在cmd中输入下面的任何一个命令即可。
   gem install rails -l
   gem install rails -l --include-dependencies
   gem install -l rails-2.0.2.gem

4、在cmd中运行"rails -v",显示版本号,表示安装成功
   在cmd中运行"rails <path>/new application"创建一个新项目
   如"rails d:/new application"则可在D:\下看到新建的项目new
   以上没有出错则rails安装成功
 
5、使用:
   运行 rails path/to/your/new/application 创建一个新的项目。
   运行 ruby path/to/your/new/application/script/server 启动服务。


=================================================================


了解RubyGems

1、什么是Gem?
gem是Ruby程序或库的打包方式,比如gem install rails就是安装rails程序的gem
我们可以拿gem和war、jar类比
但是gem还担当了Java里maven的角色,就是一个库管理工具,可以远程下载和安装Ruby库

2、常用gem命令:

gem build -- Build a gem file from a specification
gem cert -- Support signing and managing signed gems
gem check -- Check installed gems for problems
gem cleanup -- Cleanup old versions in the repository
gem contents -- Display the files contained in an installed gem
gem dependency -- List the dependencies of a gem
gem environment -- Display information about the gem environment
gem help -- Provide help about gem commands
gem install -- Installing a gem
gem list -- List gems starting with a string
gem query -- Query for a list of gems
gem rdoc -- Generate the RDoc files for an installed gem
gem search -- List gems containing a string
gem specification -- Extract the Gem::Specification from a gem file
gem uninstall -- Uninstalling a gem
gem unpack -- Unpack an installed gem to the current directory
gem update -- Update your installed gems

3、升级已经安装的gem:

因为ruby1.86默认安装的gem是0.94版的,现在最新的1.01已经出来了,将rubygems-update*.gem下载在某个目录,在cmd下到此目录,按如下指令即可升级:

gem install rubygems-update -l
update_rubygems

0 请登录后投票
   发表时间:2007-12-29  
Lighttpd+Fastcgi无法配置的原因


要让Lighttpd支持Fcgi,只要将配置中的mod_fcgi打开即可,但是要让rails环境支持fcgi还必须安装ruby_fcgi.gem这个插件,但是安装这个文件时,必须要用到Fastcgi的库文件,而在windows中暂时还没有找到安装fastcgi库文件的方法,所以导致安装gem时总是提示无法找到fastcgi.h这个库文件,所以无法配置ruby来支持fastcgi。
0 请登录后投票
   发表时间:2007-12-29  
lighttpd+scgi无法配置成功的原因


在安装完scgi_rails-0.4.3.gem,并启用lighttpd的SCGI支持,scgi仍然出错,最终发现,是scgi_rails太古老了,已经不支持rails2.02了,导致执行scgi_service时候找不到方法。

E:\t\test>scgi_service
d:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/base.rb:1532:in `method_missing'
: undefined method `threaded_connections=' for ActiveRecord::Base:Class (NoMethodError)
        from d:/ruby/lib/ruby/gems/1.8/gems/scgi_rails-0.4.3/bin/scgi_service:36:in `configure_rails
'
        from d:/ruby/lib/ruby/gems/1.8/gems/scgi_rails-0.4.3/bin/scgi_service:43:in `initialize'
        from d:/ruby/lib/ruby/gems/1.8/gems/scgi_rails-0.4.3/bin/scgi_service:60:in `new'
        from d:/ruby/lib/ruby/gems/1.8/gems/scgi_rails-0.4.3/bin/scgi_service:60
        from d:/ruby/bin/scgi_service:19:in `load'
        from d:/ruby/bin/scgi_service:19

因为在javaeye上提这个问题的原因,被je还给禁言了3天。具体是不是上面提到的这个原因,还希望知道的大大指教
0 请登录后投票
   发表时间:2007-12-29  
mongrel的安装


1、单步安装:

gem install gem_plugin-0.2.3.gem
gem install cgi_multipart_eof_fix-2.5.0.gem
gem install win32-service-0.5.2-mswin32.gem

gem install mongrel-1.1.2-mswin32.gem
gem install mongrel_service-0.3.3-mswin32.gem

或者将上面的文件放在同一目录中,然后直接输入如下即可:
gem install mongrel -l

2、测试:
进入rails应用目录
E:\ruby\demo>mongrel_rails start
或者         mongrel_rails start -p 88,就可以开启Mongrel server

3、安装成windows服务:
mongrel_rails service::install -N MyApp_Dev -c C:\Rails\MyApp -p 88 -e production

4、启动服务:
mongrel_rails_service start –n rails_app2

5、停止服务:
mongrel_rails_service stop –n rails_app2

4、删除服务:
mongrel_rails service::remove -N MyApp_Dev

PS:因为scgi是2005年的老东西了,而原作者也转向了mongrel的升级,所以windows下的最佳实践看来还是mongrel,加上apache的转发,估计完美了
另在安装mongrel_service时需要安装win32-service这个gem,但现在官方网站上只有0.60,这个版本装上后,运行mongrel_rails start就出错,只有换成0.52版才可以,看来只有等mongrel或者win32-service升级才能解决问题了
0 请登录后投票
   发表时间:2007-12-29  
sqlite的安装


因为rails2.02默认数据库转向sqlite,所以还要安装sqlite支持:sqlite3-ruby-1.2.1-mswin32.gem
还要将sqlite3的两个文件:sqlite3.exe和sqlite3.dll放到ruby的/bin下
0 请登录后投票
   发表时间:2007-12-29  
测试


最后:
c:\>rails test
c:\>cd test
c:\test>ruby script/server

打开ie,输入127.0.0.1:3000看看效果吧,点击那个 “about...可以看到运行环境。ok
1 请登录后投票
   发表时间:2007-12-29  
需要的gem和sqlite,也可去官方网站下载
0 请登录后投票
   发表时间:2007-12-29  
instant rails 2.0 已经出来了

http://rubyforge.org/forum/forum.php?forum_id=20229
0 请登录后投票
   发表时间:2007-12-29  
Lighttp还有WIN版的啊?
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics