Phusion Passenger 4.0 no Nginx - Instalando e testando no Debian Wheezy

Publicado por Marcelo Soares Souza em 29/10/2012

[ Hits: 5.573 ]

Blog: https://gitlab.com/marcelo-soares-souza

 


Phusion Passenger 4.0 no Nginx - Instalando e testando no Debian Wheezy



Este tutorial mostrará como instalar o módulo para implantação (deploy) de aplicativos Web Ruby (Rails) e Python (Django): Passenger Phusion 4.0 (beta) usando o Ruby 1.9.3.194, sobre o servidor Web de alta performance Nginx (1.3.7) no GNU/Linux Debian Wheezy 7.0 (beta 3); para testar, criaremos um pequeno aplicativo Ruby on Rails (3.2.8).

1. Primeiro, vamos instalar as dependências para compilação do nginx e Phusion Passenger. Como administrador do sistema (root), faça:

# nano /etc/apt/sources.list

2. Acrescente as seguintes linhas no final do arquivo, salve (CTRL + O) e saia do Nano (CTRL + X):

deb http://ftp.br.debian.org/debian wheezy main contrib
deb-src http://ftp.br.debian.org/debian wheezy main contrib

3. Atualize a base de pacotes local:

# apt-get update

4. Instale as dependências de compilação do nginx e do Phusion Passenger:

# apt-get build-dep nginx -y
# apt-get install ruby-passenger -y
# apt-get install git -y


Instalando o Phusion Passenger 4.0 beta

1. Baixe o código-fonte do Phusion Passenger do Git (repositório de códigos-fonte):

# git clone https://github.com/FooBarWidget/passenger.git

2. Configurando, compilando e criando o pacote gem do Phusion Passenger:

# cd passenger
# rake package


3. Instale a gem do Phusion Passenger:

# gem instal pkg/passenger-3.9.1.beta.gem

Obs.: Verificar o nome criado da gem listando o diretório PKG:

# ls -l pkg/

Instalando o nginx com suporte ao Phusion Passenger

1. Baixe o código-fonte do nginx e descompacte:

# cd ~
# wget -c
http://nginx.org/download/nginx- 1.3.7.tar.gz
# tar xvf nginx-1.3.7.tar.gz

Obs.: Lembre-se de instalar o pacote do "bzip2". Caso não esteja instalado:

# apt-get install bzip2

2. Configure e compile o nginx:

# cd nginx-1.3.7

# ./configure --sbin-path=/usr/sbin --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log -- pid-path=/var/run/nginx.pid --lock-path=/var/lock/nginx.lock --http-log-path=/var/log/nginx/access.log --http- client-body-temp-path=/var/lib/nginx/body --http-proxy-temp-path=/var/lib/nginx/proxy --http-fastcgi-temp- path=/var/lib/nginx/fastcgi --with-debug --with-http_stub_status_module --with-http_flv_module --with- http_ssl_module --with-http_dav_module --with-ipv6 --with-poll_module --with-pcre --with-http_gzip_static_module --add-module=/var/lib/gems/1.9.1/gems/passenger-3.9.1.beta/ext/nginx

# make
# make install


Criando uma aplicação de teste em Ruby on Rails

1. Instalando o Ruby on Rails:

# gem install rails

2. Criando um aplicativo em Ruby on Rails:

# cd /var/www
# rails new helloworld
# cd /var/www/helloworld
# bundle install


Configurando o nginx

1. Apague a configuração antiga do "nginx.conf":

# rm /etc/nginx/nginx.conf

2. Crie/edite um novo arquivo de configuração:

# nano /etc/nginx/nginx.conf

3. Acrescente ao "nginx.conf":

user www-data;
worker_processes 1;

events { worker_connections256; }

http {
include mime.types;
default_typeapplication/octet-stream;
sendfileon;
keepalive_timeout 90;

passenger_root /var/lib/gems/1.9.1/gems/passenger-3.9.1.beta/;

server {
listen 80;
server_namelocalhost;

passenger_enabled on;
rails_env development;

root /var/www/helloworld/public;

error_log/var/log/nginx/localhost.error.log;
access_log /var/log/nginx/localhost.access.log;

error_page 500 502 503 504 /50x.html;
location = /50x.html { root html; }
}
}

Iniciando o servidor web nginx e testando a aplicação em Ruby on Rails

1. Pare o serviço Apache 2:

# service apache2 stop

2. Crie o diretório /var/lib/nginx/body:

# mkdir -p /var/lib/nginx/body

3. Inicie o nginx:

# nginx

4. Visite o endereço do seu servidor usando um navegador Web: http://SEU_ENDEREÇO_IP_OU_HOSTNAME

Caso obtenha sucesso, uma página Web aparecerá com os dizeres:
Welcome aboard. You’re riding Ruby on Rails!

Publicado originalmente em:
Outras dicas deste autor

Instalando Friendica no Debian 7.0 Wheezy - Rede social livre e distribuída

Instalando o Noosfero no Debian 7.0 (Wheezy) com Nginx e Phushion Passenger

Leitura recomendada

Ambiente seguro com chroot

Reproduzir DVD salvo em imagem iso

Guia Foca Linux em sua Área de Trabalho

Visualizar a temperatura do hardware em modo texto

Vídeo-aulas básicas do Ubuntu 9.10

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts