Usando Ruby On Rails e Apache2+MySQL no Debian Etch

Publicado: outubro 11, 2007 em Rails, Ruby

 https://i0.wp.com/blogs.sun.com/portal/resource/rails-podcast.png

Instalando Ruby e Rails

Instalação super simples

apt-get install ruby libzlib-ruby rdoc irb rubygems rails eruby

Instalando o Apache2 e o mod-fcgid

Para integrar o Ruby on Rails  no Apache2 é fundamental o mod-fcgid.

apt-get install apache2 libapache2-mod-fcgid libfcgi-ruby1.8


Agora, habilite os Apache modules:

a2enmod ssl
a2enmod rewrite
a2enmod suexec
a2enmod include

e reload Apache:

/etc/init.d/apache2 force-reload

Instalando MySQL e o  Ruby MySQL Bindings

Existe uma grande probabilidade do uso de base de dados para as suas  Ruby e Rails applications, portando instale o MySQL server e o  Ruby MySQL bindings agora:

apt-get install libmysql-ruby mysql-server

Especifique o  password do root para o MySQL agora:

mysqladmin -u root password suasenhaderootdomysql

Criando – Ruby On Rails Environment

Crie agora  o para o uso futuro de RoR applications. Posso sugerir o diretorio /var/rails, então crie este diretório agora:

mkdir /var/rails

Determinando usuário e grupo do diretório
chown -R www-data:www-data /var/rails

cd /var/rails
su -m www-data

rails testapplication

Modificando o arquivo  .htaccess da sua aplicação.

vi /var/rails/testapplication/public/.htaccess e cole este conteúdo.

# General Apache options
#AddHandler fastcgi-script .fcgi
#AddHandler cgi-script .cgi
AddHandler fcgid-script .fcgi
Options +FollowSymLinks +ExecCGI

# If you don’t want Rails to look in certain directories,
# use the following rewrite rules so that Apache won’t rewrite certain requests
#
# Example:
#   RewriteCond %{REQUEST_URI} ^/notrails.*
#   RewriteRule .* – [L]

# Redirect all requests not available on the filesystem to Rails
# By default the cgi dispatcher is used which is very slow
#
# For better performance replace the dispatcher with the fastcgi one
#
# Example:
#   RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]
RewriteEngine On

# If your Rails application is accessed via an Alias directive,
# then you MUST also set the RewriteBase in this htaccess file.
#
# Example:
#   Alias /myrailsapp /path/to/myrailsapp/public
#   RewriteBase /myrailsapp

RewriteRule ^$ index.html [QSA]
RewriteRule ^([^.]+)$ $1.html [QSA]
RewriteCond %{REQUEST_FILENAME} !-f
#RewriteRule ^(.*)$ dispatch.cgi [QSA,L]
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]

# In case Rails experiences terminal errors
# Instead of displaying this message you can supply a file here which will be rendered instead
#
# Example:
#   ErrorDocument 500 /500.html

ErrorDocument 500 “<h2>Application error</h2>Rails application failed to start properly”

Criando um Virtual Host para a RoR Application

cp /etc/apache2/sites-available/default /etc/apache2/sites-available/default_old
cat /dev/null > /etc/apache2/sites-available/default
vi /etc/apache2/sites-available/default

<Virtualhost *:80>
ServerName testapplication.example.com
DocumentRoot /var/rails/testapplication/public/

<Directory /var/rails/testapplication/public>
Options ExecCGI FollowSymLinks
AllowOverride all
Order allow,deny
Allow from all
</Directory>
</Virtualhost>

Agora rstart o apache

/etc/init.d/apache2 restart

Usando o browser digite na barra de endeço.

http://localhost

comentários
  1. Og Rafael disse:

    Po cara… instalei aqui o debian, o mais simples um cd apenas. Quando dou o primeiro comando para instalacao da o erro.

    apt-get install ruby libzlib-ruby rdoc irb rubygems rails eruby
    Lendo lista de pacotes… Pronto
    Construindo árvore de dependências… Pronto
    O pacote ruby não está disponível, mas é referenciado por outro pacote.
    Isso pode significar que o pacote está faltando, ficou obsoleto ou
    está disponível somente a partir de outra fonte
    E: O pacote ruby não tem candidato para instalação

    saberia me dizer o pq dele nao achar pelo apt-get ?

    so responder no meu email !

    ate !

    Og Rafael

  2. Kosh disse:

    Rodar um “apt-get update” poderia resolver, mas não tive nem nunca vi esse problema que o Rafael descreveu.

    Ótimo post pyhachid.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s