ruby 1.8.6+ (download, untar, configure, make, make install [reboot])
rubygems (download, untar, ruby rubygems/setup.rb)
rails (gem install rails)
thin (gem install thin)
apache 2.2 (installs apache to /usr/local/apache2 with mod_proxy/_balancer)
- download
- untar
- ./configure --enable-proxy --enable-proxy-balancer --enable-rewrite --enable-deflate --enable-headers
- make && make install
# thin install
Installing the thin configuration file
# vi /etc/thin/thin_conf.yml
---
user: daemon
group: daemon
chdir: /var/www/rails_app/current
log: log/mongrel.log
pid: tmp/pids/mongrel.pid
environment: production
port: 8000
address: 127.0.0.1
servers: 3
# /etc/init.d/thin start
Now lets add the proxy configs to apache...
in httpd.conf:
Include conf/extra/*.conf
now add your vhost config in conf/extra/httpd-rails_app.conf ...
# vi conf/extra/httpd-rails_app.conf
# Always keep the host header
ProxyPreserveHost On
BalancerMember http://127.0.0.1:8000
BalancerMember http://127.0.0.1:8001
BalancerMember http://127.0.0.1:8002
ServerName www.rails_app.com
ServerAlias rails_app.com
DocumentRoot /var/www/rails_app/current/public
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
ProxyPass /images !
ProxyPass /javascripts !
ProxyPass /stylesheets !
ProxyPass /uploads !
ProxyPass /photos !
ProxyPass / balancer://rails_cluster/
ProxyPassReverse / balancer://rails_cluster/
# =============================================
# Configure Deflate Module (gzip)
# =============================================
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/atom_xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp
AddOutputFilterByType DEFLATE application/x-httpd-eruby
AddOutputFilterByType DEFLATE text/html
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
# =============================================
# Virtualhost logs
# =============================================
# Mark requests for the robots.txt file
SetEnvIf Request_URI "^/robots\.txt$" dontlog
ErrorLog logs/www/error_log
CustomLog logs/www/access_log combined env=!dontlog
# /usr/local/apache2/bin/apachectl start
rails thin apache all working together.... :)
No comments:
Post a Comment