Code

Changes between Version 2 and Version 3 of DeployComNginxEWSGI


Ignore:
Timestamp:
09/23/08 07:06:38 (6 years ago)
Author:
marinho
Comment:

new changes (continuing)

Legend:

Unmodified
Added
Removed
Modified
  • DeployComNginxEWSGI

    v2 v3  
    33O NginX é um servidor web que tem crescido rapidamente, especialmente por sua escalabilidade e performance. Trata-se de um concorrente à altura para o Apache o Lighttpd. Segue abaixo a receita para implantar um projeto em Django com NginX, usando mod_wsgi. 
    44 
    5 (a concluir) 
     5Este tutorial foi criado com base nas duas URLs a seguir: 
     6 
     7 * http://www.monteiro.eti.br/2007/11/30/instalando-o-mais-recente-nginx-no-seu-ubuntu/ 
     8 * http://www.rkblog.rk.edu.pl/w/p/hosting-django-under-nginx-scgi-and-wsgi/ 
     9 
     10== Compilando e instalando o NginX com suporte a mod_wsgi == 
     11 
     121. A versão do NginX compatível com mod_wsgi até o momento é a 0.5.37. Será necessário compilar para adicionar suporte ao módulo mod_wsgi. Considerando que esteja usando Ubuntu, Debian ou alguma variante deles, faça o download do código-fonte do NginX na URL a seguir: 
     13 
     14    http://sysoev.ru/nginx/nginx-0.5.37.tar.gz 
     15 
     162. Agora será preciso instalar alguns pacotes para continuar no próximo passo. Alguns desses pacotes são necessários para usar o Mercurial (através do qual vamos baixar o mod_wsgi para NginX), outros para compilar o NginX: 
     17 
     18    sudo apt-get install build-essentials libpcre3 libpcre3-dev libpcrecpp0 libssl-dev zlib1g-dev mercurial checkinstall 
     19 
     203. Ok, agora descompacte o tarball do código-fonte, como a seguir: 
     21 
     22    $ tar xvfz nginx-0.5.37.tar.gz 
     23 
     244. Agora, faça o download do mod_wsgi para NginX: 
     25 
     26    $ hg clone http://hg.mperillo.ath.cx/nginx/mod_wsgi/ 
     27 
     285. Com o mod_wsgi baixado, o próximo passo será configurar o código-fonte antes de compilar: 
     29 
     30    $ ./configure --sbin-path=/usr/sbin --pid-path=/var/run/nginx.pid --lock-path=/var/lock/nginx.lock --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --user=www-data --group=www-data --add-module=../mod_wsgi/ 
     31 
     326. Caso tudo ocorra bem, será exibido um resumo como este abaixo. Copie e guarde para a sua segurança: 
     33 
     34{{{ 
     35  nginx path prefix: "/usr/local/nginx" 
     36  nginx binary file: "/usr/sbin" 
     37  nginx configuration file: "/usr/local/nginx/conf/nginx.conf" 
     38  nginx pid file: "/var/run/nginx.pid" 
     39  nginx error log file: "/var/log/nginx/error.log" 
     40  nginx http access log file: "/var/log/nginx/access.log" 
     41  nginx http client request body temporary files: "/usr/local/nginx/client_body_temp" 
     42  nginx http proxy temporary files: "/usr/local/nginx/proxy_temp" 
     43  nginx http fastcgi temporary files: "/usr/local/nginx/fastcgi_temp" 
     44}}} 
     45 
     467. Em seguida, a tarefa é compilar o pacote. Isso irá criar os arquivos binários, mas ainda não será a instalação: 
     47 
     48    $ make 
     49 
     508. Agora, seguindo a ótima dica do Monteiro, use o '''checkinstall''' para criar um pacote .deb com os arquivos para instalação. Isso será bom pois caso queira remover posteriormente, basta digitar '''sudo apt-get remove nginx'''. 
     51 
     52    $ checkinstall 
     53 
     549. Siga o assistente respondendo as perguntas (pode ser com os valores default). No passo de descrição finalize o texto com Ctrl+D. Será criado um arquivo com nome semelhante a este: 
     55 
     56    $ ls *.deb 
     57    nginx_0.5.37-1_i386.deb 
     58 
     5910. Instale o pacote: 
     60 
     61    $ sudo dpkg -i nginx_0.5.37-1_i386.deb 
     62 
     63Pronto! Seu NginX está instalado com suporte a mod_wsgi! 
     64 
     65== Configurando um projeto em Django == 
     66 
     67(a continuar)