Ruby + Apache + Mysql for Linux安装入门手册
Ruby是一门非常有趣的开源脚本语言, 它能够支持Windows/Linux 等多种平台, 能够使用Ruby来开发包括 游戏, 网络应用, 系统管理,
CGI程序等. 它简洁、高雅、执行效率高,而且目前一经有很多比较成熟的框架来支持它。不过目前在国内普及程度不高,有兴趣的同志可以尝试一下。
我们下面描述一下它的安装方法,主要是基于Web应用的的安装:Apache + Mysql + Ruby。
一、软件列表
Apache httpd-2.0.54.tar.gz http://httpd.apache.org
MySQL mysql-4.0.25.tar.gz http://dev.mysql.com
Mod_ruby mod_ruby-1.2.4.tar.gz http://modruby.net
eRuby eruby-1.0.5 http://modruby.net
Ruby ruby-1.8.2.tar.gz http://www.ruby-lang.org
Ruby-mysql ruby-mysql-0.2.6.tar.gz http://www.tmtm.org
二、软件安装 (假设目前所由操作都是在 /root 下进行)
1. 安装MySQL
# tar zxvf mysql-4.0.25.tar.gz #解压
# cd mysql-4.0.25
# ./configure --prefix=/usr/local/mysql #配置
# make
# make install
# ./scripts/mysql_install_db #初始化数据库
# useradd mysql #加一个Mysql用户
#权限设置
# chown -R root /usr/local/mysql
# chgrp -R mysql /usr/local/mysql
# chown -R root /usr/local/mysql/bin
# chgrp -R mysql /usr/local/mysql/bin
# chown -R root /usr/local/mysql/var
# chgrp -R mysql /usr/local/mysql/var
# chmod 777 /usr/local/mysql/var
# chown -R root /usr/local/mysql/var/mysql
# chgrp -R mysql /usr/local/mysql/var/mysql
# chmod 777 /usr/local/mysql/var/mysql
# chown -R root /usr/local/mysql/var/mysql/*
# chgrp -R mysql /usr/local/mysql/var/mysql/*
# chmod 777 /usr/local/mysql/var/mysql/*
# chmod 777 /usr/local/mysql/lib/mysql/libmysqlclient.a
# /usr/local/bin/mysqld_safe --user=mysql & #使用用户mysql来运行Mysql守护进程
2. 安装Ruby
# tar -zxvf ruby-1.8.2.tar.gz
# cd ruby-1.8.2
# ./configure --prefix=/usr/local/ruby
# make
# make install
3. 安装Apache
# tar zxvf httpd-2.0.54.tar.gz
# cd httpd-2.0.54
# ./configure --prefix=/usr/local/apache --enable-module=so #配置Apache安装目录和模块加载
# make
# make install
4. 安装mod_ruby
# tar zxvf mod_ruby-1.2.4.tar.gz
# cd mod_ruby-1.2.4
# ./configure.rb --with-apxs=/usr/local/apache/bin/apxs #指定Apache模块目录
# make
# make install
# 合并Apache和mod_ruby
编辑 /usr/local/apache/conf/httpd.conf文件,加入以下内容:
LoadModule ruby_module /usr/local/apache/modules/mod_ruby.so
<IfModule mod_ruby.c>
# for Apache::RubyRun
RubyRequire apache/ruby-run
# exec files under /ruby as ruby scripts.
<Location /ruby>
SetHandler ruby-object
RubyHandler Apache::RubyRun.instance
Options +ExecCGI
</Location>
# exec *.rbx as ruby scripts.
<Files *.rbx>
SetHandler ruby-object
RubyHandler Apache::RubyRun.instance
</Files>
# # for Apache::ERubyRun
# RubyRequire apache/eruby-run
#
# # handle files under /eruby as eRuby files by eruby.
# <Location /eruby>
# SetHandler ruby-object
# RubyHandler Apache::ERubyRun.instance
# </Location>
#
# # handle *.rhtml as eruby files.
# <Files *.rhtml>
# SetHandler ruby-object
# RubyHandler Apache::ERubyRun.instance
# </Files>
# # for Apache::ERbRun
# RubyRequire apache/erb-run
#
# # handle files under /erb as eRuby files by ERb.
# <Location /erb>
# SetHandler ruby-object
# RubyHandler Apache::ERbRun.instance
# </Location>
# # for debug
# RubyRequire auto-reload
</IfModule>
# 启动Apache
# /usr/local/apache/bin/apachectl start
5. 安装eRuby
# tar -zxvf eruby-1.0.5.tar.gz
# cd eruby-1.0.5
# ./configure.rb
# make
# make install
6. 安装ruby-mysql
# tar -zxvf ruby-mysql-0.2.6
# cd ruby-mysql-0.2.6
#使用任何文本编辑器打开 ./ruby-mysql-0.2.6/setup.rb文件,修改一下内容:
sock = `mysql_config --socket`.chomp
为
sock = `/usr/local/mysql/bin/mysql_config --socket`.chomp
保存,退出
# /usr/local/ruby/bin/ruby ./setup.rb
# /usr/local/ruby/bin/ruby ./test.rb 127.0.0.1 root # ./test.rb host user password
# /usr/local/ruby/bin/ruby ./install.rb
7. 测试
# /usr/local/apache/bin/apachectl restart #重启Apache
打开浏览器,输入 http://localhost 应该能够看到"安装Apache的页面"之类的内容,如果出错,应该出险类似下面的信息:
Apache/2.0.52 (Unix) mod_ruby/1.2.4 Server at localhost Port 80
如果有必要,你可以考虑安装一个PHP跟Apache结合,方便安装类似phpMyadmin之类的工具。
--测试代码: (保存为 test.rb)--
str = "Content-Type:text/html;charset=UTF-8 /n/n"
str += "<html><head><title>Test</title></head><body>Test Succeed!</body></html>"
puts str
把该文件放在你设置的cgi目录下, 在浏览器里访问: http://localhost/cgi-bin/test.rb, 应该就能够看到输出,否则出现错误.
* 参考文档: http://www.ruby-cn.org/phpbb/viewtopic.php?t=72
WriteTime: 2005-09-03 23:21
Author: heiyeluren