사용자 도구

사이트 도구


develop:ruby

문서의 이전 판입니다!


Ruby

Using Ruby on Debian Linux

Install on Debian Linux

package 를 찾아보면 ruby, ruby1.8 이 있는데 이중에서 어떤 것을 설치해야 할지 모르겠다. 버전이 약간 차이가 있는데, 다른 부분은 어떻게 다른지 알 수 없다. 다시 확인해보니, ruby 를 설치하면 ruby1.8이 함께 설치되는 것이었다. 그러므로 다음과 같이 설치하면 된다.

# apt-get install ruby irb ri rdoc
  • The irb is acronym for Interactive RuBy. It evaluates Ruby expression from the terminal.
  • ri is a command line tool that displays descriptions of built-in Ruby methods, classes, and modules. For methods, it shows you the calling sequence and a description. For classes and modules, it shows a synopsis along with a list of the methods the class or module implements.

Install RubyGems

RubyGems는 Ruby의 표준 패키지 관리프로그램이다.

# apt-get install rubygems

Set Rails Environment (1)

  • Install ruby 1.8.5 + Apache 2.2.3 + mod_proxy_balancer + mongrel + php5 on Debian (Etch) Linux

우선 프로그램을 설치할 디렉토리를 생성한다.

# mkdir /opt/rails

mongrel 을 설치하기 위해서는 ruby 1.8.4 이상의 버전이어야 한다. Debian (Etch) Linux 의 Ruby 버전은 1.8.5 이므로 충족된다.

Install Rails

# gem update --system
# gem install rails --include-dependencies

Install mongrel

# gem update --system
# gem install mongrel mongrel_cluster --include-dependencies

Install Apache 2.2.3

# apt-get install apache2.2-common

Install PHP 5

# apt-get install libapache2-mod-php5

Setting Apache2

# vi /opt/rails/apache2/conf/httpd.conf
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php .html .htm .inc
AddType application/x-httpd-php-source .phps
DirectoryIndex index.php index.html
Include conf/extra/httpd-vhosts.conf
# vi /opt/rails/apache2/conf/extra/httpd-vhosts.conf
# PHP 파트
<Directory "PHP웹루트디렉토리">
    Options Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
<VirtualHost 아이피주소>
    DocumentRoot PHP웹루트디렉토리
    ServerName PHP도메인이름
</VirtualHost>
# Rais 파트
<Directory "RAILS웹루트디렉토리">
    Options Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
<VirtualHost 아이피주소>
    ServerName RAILS도메인이름
    RewriteEngine On
    RewriteCond %{DOCUMENT_ROOT}/system/maintenance.html -f
    RewriteCond %{SCRIPT_FILENAME} !maintenance.html
    RewriteRule ^.*$ /system/maintenance.html [L]
    RewriteRule ^/$ /index.html [QSA]
    RewriteRule ^([^.]+)$ $1.html [QSA]
    RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f
    RewriteRule ^/(.*)$ balancer://mongrel_cluster%{REQUEST_URI} [P,QSA,L]
    AddOutputFilterByType DEFLATE text/html text/plain text/css
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    BrowserMatch ^Mozilla/4.0[678] no-gzip
    BrowserMatch bMSIE !no-gzip !gzip-only-text/html
</VirtualHost>

Create RAILS웹루트디렉토리

만약 /opt/www/test 라는 RAILS웹루트디렉토리를 만들고 싶다면 다음과 같이 실행한다.

# cd /opt/www
# rails test

mongrel_rails + apache2 실행

# mongrel_rails start -d -p 8000 -e production -P log/mongrel-0.pid -c /opt/www/test
# mongrel_rails start -d -p 8001 -e production -P log/mongrel-1.pid -c /opt/www/test
# mongrel_rails start -d -p 8002 -e production -P log/mongrel-2.pid -c /opt/www/test
# /opt/rails/apache2/bin/apachectl start

이렇게 하고 해당 URL을 웹브라우저로 접근해 본다. ^^

mongrel_rails 중지

# mongrel_rails stop -P log/mongrel-0.pid -c /opt/www/test
# mongrel_rails stop -P log/mongrel-1.pid -c /opt/www/test
# mongrel_rails stop -P log/mongrel-2.pid -c /opt/www/test

mongrel_cluster 이용

mongrel_cluster를 이용하면 mongrel_rails 시작/중지시 귀찮은 타이핑 수고를 덜 수 있습니다.

# cd /opt/www/test
# mongrel_rails cluster::configure -e production -p 8000 -N 3 -c /opt/www/test

위 명령을 실행하면 RAILS_ROOT/config/mongrel_cluster.yml이 만들어지고, 그 후에는

# cd /opt/www/test
# mongrel_rails cluster::start
# mongrel_rails cluster::stop

명령으로 기동/중지를 할 수 있습니다.

기타

Install lighttpd

RoR에 가장 적합한 환경인 lighttpd + FCGI 환경을 구축하려는데, Debian Stable 에 lighttpd 패키지도 존재하지 않는다. 그러므로 별도로 패키지를 받아서 설치해야 한다. 먼저 lighttpd 를 설치하기전에 필요한 패키지부터 설치한다.

# apt-get install libpcre3 zlib1g

http://www.lighttpd.net/download/ 으로 가서 데비안 패키지를 다운로드 받아서 설치한다.

# wget http://www.lighttpd.net/download/debian/sarge/lighttpd_1.4.3-1_i386.deb
# dpkg -i lighttpd_1.4.3-1_i386.deb

만약 Debian이 unstable 이라면 다음과 같이 바로 설치할 수 있다.

# apt-get update
# apt-get install lighttpd lighttpd-doc

소스를 직접 데비안 패키지로 만들어서 설치하려면 다음과 같이 한다.

???

다음으로 log 디렉토리의 소유자:그룹을 재설정하고 configuration 파일을 생성한다.

# chown www-data:www-data /var/log/lighttpd/
# cd /etc/lighttpd
# cp lighttpd.conf.dpkg-new lighttpd.conf

General

Blog

Environment

develop/ruby.1175518765.txt.gz · 마지막으로 수정됨: 2007/04/02 21:59 저자 mattabu