역시나 걱정된다 - 2008/05/27 11:49

Install ruby 1.8.5 + Apache 2.2.3 + mod_proxy_balancer + mongrel + php5 for Debian Linux

Install ruby 1.8.5 + Apache 2.2.3 + mod_proxy_balancer + mongrel + php5 for Debian Linux

Debian Linux 에서는 아직 지원되지 않는 패키지라서 직접 소스로 설치해야 한다. 우선 프로그램을 설치할 디렉토리를 생성한다.

# mkdir /opt/rails

 

1. Install ruby 1.8.5

mongrel 을 설치하기 위해서는 ruby 1.8.4 이상의 버전이어야 한다.

# cd /opt/src
# wget ftp://ftp.ruby-lang.org/pub/ruby/ruby-1.8.5.tar.gz
# tar xvfz ruby-1.8.5.tar.gz
# cd ruby-1.8.5
# ./configure; make; make install

 

2. Install RubyGems

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

# cd /opt/src
# wget http://rubyforge.org/frs/download.php/11289/rubygems-0.9.0.tgz
# tar xvfz rubygems-0.9.0.tgz
# cd rubygems-0.9.0
# ruby setup.rb

 

3. Install Rails

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

4. Install mongrel

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

 

5. Install Apache 2.2.3

# cd /opt/src
# wget http://ftp.kaist.ac.kr/pub/Apache/httpd/httpd-2.2.3.tar.gz
# tar xvfz httpd-2.2.3.tar.gz
# cd httpd-2.2.3
# ./configure --prefix=/opt/rails/apache2 --enable-modules=so --enable-so --enable-rewrite --enable-deflate --enable-proxy --enable-proxy-html --enable-proxy-balancer --enable-cache --enable-mem-cache --enable-headers
# make; make install

 

6. Install PHP 5.1.6

# apt-get install libxml2 libxml2-dev libxml2-utils
# cd /opt/src
# wget http://kr2.php.net/get/php-5.1.6.tar.gz/from/kr.php.net/mirror
# tar xvfz php-5.1.6.tar.gz
# cd php-5.1.6
# ./configure --prefix=/opt/rails/php5 --with-apxs2=/opt/rails/apache2/bin/apxs --enable-xml --enable-libxml --with-xmlrpc --with-iconv --enable-calendar --enable-sysvshm=yes --enable-sysvsem=yes --enable-debug=no --enable-track-vars=yes --enable-url-fopen-wrapper=yes --enable-ftp --enable-memory-limit --enable-mbstring --enable-sockets --enable-wddx --enable-bcmath --enable-mbstr-enc-trans --enable-mbregex --enable-exif --with-ttf
# make; make install

 

7. 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
파트

   Options Indexes FollowSymLinks
   AllowOverride None
   Order allow,deny
   Allow from all


   DocumentRoot PHP
웹루트디렉토리
   ServerName PHP
도메인이름

# Rais
파트

   Options Indexes FollowSymLinks
   AllowOverride None
   Order allow,deny
   Allow from all


   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

8. Create RAILS웹루트디렉토리

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

# cd /opt/www
# rails test

 

9. 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을 웹브라우저로 접근해 본다.

 

10. 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


원문 : http://illkiss.iwebschool.net/wiki/wiki.php/Script/Ruby

 

진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기딜리셔스에 북마크
TAG

Trackback Address ::

http://blog.jinbo.net/manim/trackback/13
PREV 1 ... 13 14 15 16 17 18 19 20 21 ... 29 NEXT