ruby环境的配置

安装 Ruby 解析器 

 

一些Linux发行版本,MacOSX操做系统都自带Ruby解析器,可是我仍然建议自行下载ruby源代码编译安装。由于一方面能够本身定制ruby安装的路径,另外一方面能够在编译过程当中自行添加更多的特性。javascript

 

ruby的源代码能够从Ruby官方网站下载:css

http://www.ruby-lang.org/en/downloads/ html

 

下载源代码包到本地Linux主机,而后解压缩,进入该目录,进行配置,编译和安装:java

tar xzvf ruby-1.8.5.tar.gz mysql

cd ruby-1.8.5 web

./configure –prefix=/usr/local/ruby sql

make && make install 数据库

若是想浏览全部的configure参数,能够:ubuntu

./configure –help |more windows

若是不定制安装的目录,默认将安装到/usr/local目录下面。然而我建议自行定制一个ruby的安装目录,例如/usr/local/ruby,这样便于之后的升级,不会和操做系统其余软件混在一块儿。

 

安装好之后,修改操做系统PATH路径,加入/usr/local/ruby/bin

export PATH=/usr/local/ruby/bin:$PATH 

将咱们本身安装的ruby放在系统PATH前面,避免操做系统自带的ruby形成的干扰。在Linux上,通常将设置放在/etc/profile中,便于对全局生效。

 

安装 ruby on rails 

 

在安装rails以前,要先安装rubygemsrubygemsruby的在线包管理工具,能够从rubyforge下载rubygems

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

下载好源代码包,解压缩,安装:

tar xzvf rubygems-0.9.0.tgz 

cd rubygems-0.9.0/ 

ruby setup.rb 

 

而后就能够安装rails了,在确认服务器已经链接互联网的状况下执行:

gem install rails –y 

即经过gemrubyforge网站下载rails全部依赖包安装。

 

安装好rails之后,能够执行:

rails –v 

确认一下rails的版本。

 

安装 ruby 的数据库适配器 

rails发行包中已经自带纯rubyMySQL数据库适配器,然而对于生产环境来讲,咱们仍然应该下载安装C版本的数据库适配器,以达到更好的性能。下载mysql-ruby-2.7.3.tar.gz

http://www.tmtm.org/en/mysql/ruby/ 

tar xzvf mysql-ruby-2.7.3.tar.gz 

cd mysql-ruby-2.7.3 

ruby extconf.rb --with-mysql-dir=/opt/mysql5 

make && make install 

注意--with-mysql-dir应该指向MySQL数据库的安装路径,若是数据库服务器和Web服务器不在同一台机器上,那么Web服务器上也必须安装MySQL软件,由于rubyC版本MySQL适配器须要在编译的时候联接MySQL的系统库。

 

安装 Ruby 的 FCGI 支持 

 

因为rubyfcgi支持库须要在编译的时候联接FCGI的系统库,所以咱们须要先安装FCGI库,下载FCGI源代码发行包:

http://www.fastcgi.com/dist/ 

tar xzvf fcgi-2.4.0.tar.gz 

cd fcgi-2.4.0 

./configure --prefix=/usr/local/fcgi 

make && make install 

一样,将fcgi安装在本身指定的目录下,而不是默认的/usr/local,避免多个软件混在一块儿。

 

而后就能够安装rubyfcgi支持库了,下载ruby-fcgi-0.8.7.tar.gz

http://rubyforge.org/projects/fcgi/ 

tar xzvf ruby-fcgi-0.8.7.tar.gz 

cd ruby-fcgi-0.8.7 

ruby install.rb config -- --with-fcgi-include=/usr/local/fcgi/include --with-fcgi-lib=/usr/local/fcgi/lib 

ruby install.rb setup 

ruby install.rb install 

 

安装 lighttpd Web Server 

 

安装 Lighttpd 

 

在安装lighttpd以前,应该确认操做系统已经安装pcre,即Perl兼容的规则表达式库:

rpm –qa |grep pcre 

若是没有,请从Linux安装光盘里面安装。

 

而后下载lighttpd

http://www.lighttpd.net/download/ 

tar xzvf lighttpd-1.4.13.tar.gz 

cd lighttpd-1.4.13 

./configure --prefix=/usr/local/lighttpd 

 

configure完毕之后,会给出一个激活的模块和没有激活模块的清单,能够检查一下,是否本身须要的模块都已经激活,在enable的模块中必定要有“mod_rewrite”这一项,不然从新检查pcre是否安装。而后编译安装:

make && make install 

 

编译后配置:

cp doc/sysconfig.lighttpd /etc/sysconfig/lighttpd 

mkdir /etc/lighttpd 

cp doc/lighttpd.conf /etc/lighttpd/lighttpd.conf 

 

若是你的LinuxRedHat/CentOS,那么:

cp doc/rc.lighttpd.redhat /etc/init.d/lighttpd 

若是你的LinuxSuSE,那么:

cp doc/rc.lighttpd /etc/init.d/lighttpd 

若是你的Linuxubuntu,那么须要本身建立启动脚本,lighttpd官方wiki上面已经给出来该脚本,地址在:

http://redmine.lighttpd.net/wiki/1/ScriptsUbuntu 

 

其余Linux发行版本能够自行参考该文件内容进行修改,或者本身写一个控制脚本,也不过举手之劳:

 

C代码  

  1. #!/bin/sh   
  2. case "$1" in    
  3. start)            
  4. /usr/local/lighttpd/sbin/lighttpd -f /etc/lighttpd/lighttpd.conf > /dev/null 2>&1   
  5. ;;   
  6. stop)    
  7. killall lighttpd   
  8. ;;   
  9. restart)    
  10. $0 stop   
  11. sleep 1   
  12. $0 start    
  13. ;;   
  14. *)    
  15. echo "Usage: lighttpd.sh {start|stop|restart}"    
  16. ;;    
  17. esac   
  18. exit 0   

#!/bin/sh

 

case "$1" in 

  start)         

    /usr/local/lighttpd/sbin/lighttpd -f /etc/lighttpd/lighttpd.conf > /dev/null 2>&1

    ;;

  stop) 

    killall lighttpd

    ;;

  restart) 

   $0 stop

   sleep 1

   $0 start 

   ;;

  *) 

  echo "Usage: lighttpd.sh {start|stop|restart}" 

  ;; 

esac

 

exit 0 

 

而后修改/etc/init.d/lighttpd,把

LIGHTTPD_BIN=/usr/sbin/lighttpd 

改成

LIGHTTPD_BIN=/usr/local/lighttpd/sbin/lighttpd 

 

此脚本用来控制lighttpd的启动关闭和重起:

/etc/init.d/lighttpd start 

/etc/init.d/lighttpd stop 

/etc/init.d/lighttpd restart 

 

若是你但愿服务器启动的时候就启动lighttpd,那么:

chkconfig lighttpd on 

 

这样lighttpd就安装好了,接下来须要配置lighttpd

 

配置 Lighttpd 

 

修改/etc/lighttpd/lighttpd.conf

 

1server.modules

取消须要用到模块的注释,mod_rewritemod_accessmod_fastcgimod_simple_vhostmod_cgimod_compressmod_accesslog是通常须要用到的。

 

2server.document-root, server.error-logaccesslog.filename须要指定相应的目录

 

3)用什么权限来运行lighttpd

server.username            = "nobody" 

server.groupname           = "nobody" 

从安全角度来讲,不建议用root权限运行web server,能够自行指定普通用户权限。

 

4)静态文件压缩

compress.cache-dir         = "/tmp/lighttpd/cache/compress" 

compress.filetype          = ("text/plain", "text/html","text/javascript","text/css") 

能够指定某些静态资源类型使用压缩方式传输,节省带宽,对于大量AJAX应用来讲,能够极大提升页面加载速度。

 

5)配置ruby on rails

 

最简单的配置以下:

$HTTP["host"] == "www.xxx.com" { 

 server.document-root = "/yourrails/public" 

 server.error-handler-404 = "/dispatch.fcgi" 

 fastcgi.server = (".fcgi" => 

    ("localhost" => 

      ("min-procs" => 10, 

       "max-procs" => 10, 

       "socket" => "/tmp/lighttpd/socket/rails.socket", 

       "bin-path" => "/yourrails/public/dispatch.fcgi", 

       "bin-environment" => ("RAILS_ENV" => "production") 

      ) 

    ) 

 ) 

即由lighttpd启动10FCGI进程,lighttpdFCGI之间使用本机Unix Socket通讯。

 

LighttpdFAQ:没法启动Ruby on Rails

 

FastCGI的启动脚本位于Rails应用目录下面public/dispatch.fcgi,若是没法启动Lighttpd,报告 FastCGI错误,你能够尝试着手工运行该脚本cd public && ./dispatch.fcgi,看看是否能够运行。通常来讲,不少人都是在Windows下面建立Rails项目,致使dispatch.fcgi脚本的ruby运行路径指向windows下面的ruby,部署到Linux上面就没法运行了,另一方面Windows上面建立的Rails项目在 Linux上面dispatch.fcgi没有可执行权限,因此也须要授予可执行权限。

安装 ImageMagick 和 RMagic (可选

RMagicruby处理图片须要用到的库,不少ruby应用因为都涉及图片处理的功能,每每须要依赖RMagic,但安装ImageMagickRMagic至关烦琐,须要特别的说明。

 

安装 ImageMagick 

http://www.imagemagick.org 

ImageMagick是用C语言实现的图形处理库,有Unix版本和Windows版本。对于Unix版原本说,安装比较麻烦些,另外不建议安装ImageMagick二进制版本,每每会致使缺乏某些图片处理功能,致使RMagic安装失败。下载ImageMagick源代码,解压缩,配置:

tar xzvf ImageMagick-6.2.9-0.tar.gz 

cd tar xzvf ImageMagick-6.2.9 

./configure --prefix=/usr/local/ImageMagick 

 

观察配置后给出来的支持图形格式,看看该图形格式支持是不是yes,若是不是,那么必须先安装该图形格式的本地库。例如,你应该检查是否已经安装以下rpm包:

rpm –qa |grep libpng 

rpm –qa |grep libpng-devel 

rpm –qa |grep libjpeg 

rpm –qa |grep gd-devel 

若是你但愿支持tiff格式,还应该检查

rpm –qa |grep libtiff 

若是没有安装,那么在Linux安装光盘找到相应rpm包安装上,再次configure直到确认须要的图形格式所有支持为止,而后编译安装:

make && make install 

 

因为ImageMagic被安装在咱们自行指定的/usr/local/ImageMagick,后面安装RMagic会找不到须要用到的ImageMagic的命令和库,所以须要配置一下操做系统:

 

编辑/etc/profile里面的PATH环境变量,在最后面加入:

export PATH=/usr/local/ruby/bin:/usr/local/ImageMagick/bin:$PATH 

 

编辑/etc/ld.so.conf,加入:

/usr/local/ImageMagick/lib 

执行命令:

ldconfig 

ImageMagick的库加入系统联接库

 

而后注销当前用户从新登陆,便于环境变量修改生效,执行:

convert logo: logo.gif 

看是否正确生成一个logo.gif的图片文件。

 

安装 RMagic 

http://rubyforge.org/projects/rmagick/ 

rubyfoge上面下载RMagic的源代码发行包,不要下载gem包,而后解压缩编译:

./configure 

make && make install 

 

若是配置和编译过程没有报错,即大功告成。

 

对于MacOSX来讲,安装RMagic以上步骤会出错,请参考:

http://rmagick.rubyforge.org/install-osx.html 

 

整体来讲,ImageMagickRMagic的安装很容易出错,安装起来比较困难,若是碰到没法解决的问题,能够经过Google寻求解决办法。

相关文章
相关标签/搜索