史上最完整的ruby,rails环境架设配置(Apache+fastcgi)

转载 2007年09月24日 21:55:00

在cloudzm的blog上看到这篇文章,照着做了一遍,发现有一两处遗漏,写出来以免自己忘记:
我用的是windows2003, server 用的是wamp server(apache 2.0 , php5, mysql5)
下面是原文,红字是我自己写的:

其实只是写出来,怕以后忘记,也没指望多少人会看到,网上也有许多关于设置apache和rails的文章,我试了几个都有问题,最后参照网上的文章,自己摸索出这个方法来。如果能够帮到某些人的话,我还是很高兴的。

直接进入正题吧…

1 安装Ruby

略…

Ruby的版本要是1.8.2的,Rails 0.13中用到了一些老版本Ruby中没有的特性,所以最好还是用新一点的。我的机器上:C:/>ruby -v : ruby 1.8.2 (2004-12-25) [i386-mswin32]

2 安装rubygems

windows下的ruby installer自带了rubygems,如果安装时没选,到此处下载rubygems

http://rubyforge.org/projects/rubygems/

解压后运行C:/>rubygems-0.8.10/ruby setup.rb,查看是否安装好,C:/>gem -v : 0.8.10

3 安装Rails

C:/>gem install rails –include-dependencies

会安装Rails以及其依赖的其它gem

因为是remote安装,可能会比较慢,也可以先下到本地来安装(http://gems.rubyforge.org/gems/)。命令执行完后,看看装了哪些gem:

C:>gem list

actionmailer (1.0.1)
Service layer for easy email delivery and testing.

actionpack (1.9.1)
Web-flow and rendering framework putting the VC in MVC.

actionwebservice (0.8.1)
Web service support for Action Pack.

activerecord (1.11.1)
Implements the ActiveRecord pattern for ORM.

activesupport (1.1.1)
Support and utility classes used by the Rails framework.

rails (0.13.1)
Web-application framework with template engine, control-flow layer,
and ORM.

rake (0.5.4)
Ruby based make-like utility.

4 安装FastCGI

到此处下载RubyForApache

http://rubyforge.org/projects/rubyforapache

RubyForApache 包含了mod_fastcgi和mod_ruby,我们只需要用到mod_fastcgi。安装时要选好Apache的目录,installer会在选定 的目录/modules下面放入mod_fastcgi,所以如果后面Apache找不到这个模块,就看看是否安装正确了。

安装的时候不能装mysql.so,我不知道这个是做什么用的,这个文件是在ruby下面,可能是ruby的一个mod吧,但是我的情况是安装了这个之后mysql不能连。所以删掉这个文件了。
还有就是安装的时候出错一次,说是不能安装一个文件叫做ms…71.dll的,查了一下是c++的runtime文件,我的机器里面有更高的版本了所以就直接忽略掉。

5 配置Apache

Apache的安装就不说了,我的版本是2.0.48 。

打开httpd.conf文件,首先是加载一些模块:


wamp5的httpd.conf文件在c:/wamp/apache2/conf下面

  1. LoadModule rewrite_module modules/mod_rewrite.so #
  2.  
  3. LoadModule fastcgi_module modules/mod_fastcgi.so
  4.  
  5.  
  6. AddHandler fastcgi-script .fcgi
  7.  

#下面这句话很重要,设置超时时间,因为rails启动时间比较长,如果太短了,容易超时,导致fastcgi反覆启动ruby进程,根据你的机器配置来设
FastCgiConfig -restart-delay 120 -idle-timeout 150 -appConnTimeout 100 -init-start-delay 100 -startDelay 100

因为我还要用到PHP,所以做了一个Virtual Host

NameVirtualHost *:8080 #端口号根据你自己的改,我的80被IIS占了

  1.  


作者遗漏了一件事情就是要设置apache让他能够listen 8080端口,要不然还是不能用的。
在listen 80下面添上这一行:
Listen 127.0.0.1:8080

  1.  

ServerName rails # 随便起的一个名字

#下面设置的是放置你的rails程序的位置,我是放在e:/learnruby目录下的

这里要加一句:
DocumentRoot e:/www/ruby/
我是把ruby的程序放在了这个目录下面的,要不然还是不能用的

#下面这句话的是alias所有的形如”/app/controller/action”的路径为实际路径e:/learnruby/app/public/controller/action

#rails应用程序app目录下面的public目录就是给http server用的,alias之后,Apache才能找到rails的dispatch.fcgi文件

  1. AliasMatch ^/([^/]*)(.*) "e:/learnruby/$1/public$2"

#这里需要设置e:/learnruby目录具有ExecCGI FollowSymLinks选项

  1.  
  2. Options ExecCGI FollowSymLinks
  3. AllowOverride all
  4. Allow from all
  5. Order allow,deny
  6.  
  7.  
  8. RewriteEngine on
  9. RewriteLogLevel 0
  10.  

保存之后重启Apache。

还要再编辑rails应用程序目录下的public/.htaccess文件,假设应用程序的名字为demo(可以用

E:/learnruby>rails demo命令在e:/learnruby下新建一个空的应用)

那么要加入一句话:
RewriteBase /demo

为了能使用fastcgi,还要将RewriteRule ^(.*)$ dispatch.cgi [QSA,L]注释掉,并去掉RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]的注释

最后看起来大概会是这样:

RewriteEngine On
RewriteBase /demo #


 

在apache中安装mod_ruby和eruby

1.简介    mod_ruby在apache中嵌入了Ruby解释器,能使Ruby CGI更快的执行。下载地址:http://modruby.net/archive/mod_ruby-1.2.4.ta...
  • ruby_cn
  • ruby_cn
  • 2004年11月12日 14:29
  • 4045

让Apache支持ruby写的cgi程序

ruby apache cgi 配置 1,按说明安装ruby的apache mod2,配置文件如下:Code highlighting produced by Actipro CodeHighligh...
  • djcsch2001
  • djcsch2001
  • 2008年09月11日 13:41
  • 1409

配置IIS的ruby on rails运行环境

10 steps to get Ruby on Rails running on Windows with IIS FastCGISince the original tech preview rel...
  • zshwlw
  • zshwlw
  • 2009年04月28日 16:53
  • 4119

安装配置Apache支持https和fcgi

Apache安装及配置 1.1 下载软件 1、Apr :(wget http://mirrors.hust.edu.cn/apache//apr/apr-1.5.1.tar.gz) 2、Apr-...
  • nyist327
  • nyist327
  • 2015年02月10日 19:47
  • 2395

mac下ruby on rails环境搭建

ruby初探
  • nemoalways
  • nemoalways
  • 2016年08月03日 17:31
  • 457

Ruby On Rails 框架下的常用插件介绍 --- haml

主页:http://haml-lang.com/ 作用:替换掉rails自带的erb,此插件可以使得view代码变得非常简洁。 安装: 在Gemfile文件中追加如下代码: gem 'haml...
  • kunshan_shenbin
  • kunshan_shenbin
  • 2012年02月28日 17:09
  • 894

Ubuntu 安装ruby on rails 环境

Ubuntu 安装ruby on rails 环境 操作系统:ubuntu 16.04 开发相关版本信息 rvm 1.27.0 ruby 2.1.6 rails 4.0.1 sublime t...
  • XIAO_XIAO_C
  • XIAO_XIAO_C
  • 2016年07月02日 18:42
  • 1025

Ubuntu14.04上搭建ruby on rails 环境全过程

这是我的第一个博客,一个程序员的成长是需要经验的积累,从一个小白开始自学ruby,过程中可能会遇到各种各样的千奇百怪的问题,需要一个个的去解决,解决之后还要记录解决的方法,积累自己的经验,同时可以把我...
  • u012399055
  • u012399055
  • 2015年03月06日 19:20
  • 519

ubuntu 14.04中安装ruby on rails环境(填坑版)

环境:在win7 上Vmware虚拟机环境中安装的ubuntu 14.04 开发相关: ruby 2.2.0 rails 4.2.0 sublime text 3 本文说明:...
  • u012296101
  • u012296101
  • 2015年06月29日 11:45
  • 1441

在Mac OS X上建立Ruby on Rails开发环境

这篇文章是我看了阿修写“在Mac OS X上建立Ruby on Rails开发环境”,照着他的步骤作了一遍之后,整理而来的。内容基本上一致,添加了一些图而已。如果你希望看到原版的内容,请看这里阿修的部...
  • crazyflyingsnow
  • crazyflyingsnow
  • 2007年07月28日 12:56
  • 4998
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:史上最完整的ruby,rails环境架设配置(Apache+fastcgi)
举报原因:
原因补充:

(最多只允许输入30个字)