原文:
GettingStartedWithRails
译者:g.zhen.ning a.k.a cclong
校对 drive2me
1、确保你安装了
php?name=Ruby" onclick="tagshow(event)" class="t_tag">Ruby
Rails 1.2.3与Ruby 1.8.6一起运行。你在开始这个教程前或许需要先更新/下载Ruby。
CentOS 参照:
RailsOnCentOS Portal
Debian 参照:
RailsOnDebian.
Ubuntu 参照:
RailsOnUbuntu.
Gentoo 用emerge安装或看
the Gentoo Wiki entry
Fedora Core 参照
RailsOnFedora. 如果你没有安装从源里安装Ruby, 请确保安装了与Ruby交互式的shell的irb。irb的安装方法在这:(
yum install irb ). 否则,断点会不正常运作,FC系统的irb安装包现在称为ruby-irb,因此安装方式为“yum install ruby-irb.i386”
Fedora Core 3 参照
RailsOnSpike . 由
SpikeSource. 制作集成LAMP stack + Ruby on Rails的。
Fedora Core 6 参照
RailsOnFedora6.
Redhat 9 参照
Ruby and Rails on Red Hat Linux 9 (或者
Fast CGI and Apache2 for Red Hat Linux 9).
FreeBSD 参照
RailsOnFreeBSD.
OpenBSD 参照
RailsOnOpenBSD.
OSX 参照
HowtoInstallRailsOnOsx. 你可以使用 installer 或 DarwinPorts.
Solaris 参照
Cool Stack. 下载CSKruby安装包
Windows 参照
RailsOnWindows
Rails Live CD 参照
HowToInstallWithRailsLiveCD
安装好Ruby后,请运行”ruby –v”检查你的ruby版本细节,特别是许多Mac OS X用户常被此困扰,因为AppleRuby绑定了1.6这个版本,尾随1.8版本安装. 请看
SettingYourPath.
(注意:在Ubuntu/Debian:openssl或许会报’not found’错误,你可以这样来修复:
Cd ruby_src_dir/ext/openssl
http://www.semergence.com/2007/03/15/installing-openssl-support-for-ruby-on-ubuntu/
2、安装Ruby on Rails
使用Ruby Gems来下载Ruby on Rails,详情参考
GemRails.
Gem install rails –include-dependencies
(要有耐心,下载过程可能需要一点时间)。参数--include-dependencies询问是否下载相关的安装软件包,回答“yes”表示安装相关软件包,如rDoc.)
3、生成Rails应用程序
当你准备好之后,
Rails会准备好所有你需要的目录来启动并且设置一些你需要的启动权限。当安装好Rails之后,你需要做的只是,在你想要创建应用程序的目录下的命令行运行rails。(不应该创建在你Web server能直接访问的目录.)
Ln –s /sur/myapp/public /var/www/myapp
下一步的public目录位于你新创建的应用程序的目录内。
4、为Ruby使用适当的环境路径(组织行!)
默认配置的Rails应用程序引用的Ruby是使用 /usr/bin/evn ruby, 这组织行对大部分配置都有效。
如果你因为一些原因,/usr/bin/env ruby 不能正常引用,或解释到错误的Ruby,尝试如下修改:
1、 改变你的环境路径到正确的ruby
2、 在下列文件的行顶部:
引用:
public/dispatch.cgi,public/dispatch.rb,public/dispatch.fcgi,script/breakpointer,script/console,script/generate,和script/server
。修改下面这行:
下面这链接有一些用于修改必须文件的命令行脚本,
ShebangChangeScripts.
5、确保已配置好Apache
注意:如果你现在的rails已经正常运行于WEBrick,可以跳到第7步。
为了使用Rails运行于Apache下,需要配置运行CGI文件,因此你需要确定AddHander cgi-scrpt .cgi在你的Apache配置文件的某处。
1、 为Rails应用程序设置Apache。如果你准备把应用程序运行在虚拟主机根目录(DocumentRoot)(或许作为你的网站入门),请看下面的”Example for Apache conf”。如果你喜欢部署在别处,可参考:HowToSetTheBaseURLsOfYourRailsApps
2、 打开应用程序首页检查你是否看到”Congratulations,You’re on Rails!”页面
3、 按照”Congratulations, you’re on Rails”页面指南进行操作。
Apache conf配置示例
在给定的Apache设置下,把
目录替换为解压后的tar.gz包的rails完整目录, 并且确保添加了public和log到相应的目录,我而且开启了CGI支持和设置一些访问要求。AllowOverride line是重要的——内在的,Rails用位于public文件夹的.htaccess文件来处理一些重定向。(Suse 9.1里的Apache锁定得相当严密)
Rails同样需要mod_rewrite模块。
引用:
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule env_module modules/mod_env.so
<VirtualHost *:80>
SetEnv RAILS_ENV development
ServerName rails
DocumentRoot /path/application/public/
ErrorLog /path/application/log/apache.log
<Directory /path/application/public/>
Options ExecCGI FollowSymLinks
AddHandler cgi-script .cgi
AllowOverride all
Order allow,deny
Allow from all
</Directory>
</VirtualHost>并且,确保Apache有写入到/path/application/tmp目录的权限。
6,从log文件里获取错误报告
Rails会从
文档里
报告错误,Ruby的代码则从
文档里报告错误。如果你碰到问题,请检查一下上面两个文件的错误报告。
在Unix和Mac OS X,你可以在终端运行
tail –f log/development.log
来监视你的应用程序的执行情况。
7,教程
•
Rolling with Rails 作者: O’Reilly ONLamp.com公司 (
part 2)—
Updated for InstantRails
•
A complete turbogears spoliation: howto build a wiki in 20 minutes (well I did not time it) 作者: Frederick Ros
•
The Tutorial on this wiki (Please help us improve this!)
• Collection of 180+ online
Ruby on Rails Tutorials
•
Howto make a TODO List Application by GnuVince (注意: 本页已过时!)
•
Rails Project Story 作者: Rida Al Barazi
•
How to paginate, sort and search a table with Ajax and Rails 作者: Julien Barnier
•
HOW-TO: Build a secured web application with Ruby on Rails
作者: Sonjaya Tandon
•
Getting Really Started with Ruby on Rails 一套全面深入介绍Ruby on Rails的幻灯片
•
How to Develop Web Applications using Ruby on Rails 作者:
Hendy Irawan
•
How to Develop Web Applications using Ruby on Rails 作者:
Hendy Irawan
•
Ruby on Rails WebAlbum 本文是介绍Ruby on Rails系列的结束篇。WebAlbum应用程序是一个简单的相册。这程序里的用户有相簿,相簿下有图片。教程里的Lightbox用来制造幻灯片效果。
当你看过上面的教程,有了一些基础后。我们建议你看一看
OpenSourceProjects章节。特别如果你是那种通过其他人的程序源代码来学习效果最好的。
8.获得在线帮助
你有一些基本的运作问题?来IRC频道的Railers,房间 #rubyonrails请教高手吧。(
IRC|How to get on IRC).
[
本帖最后由 cclong 于 2008-5-15 00:09 编辑 ]