Header Ads

Ubuntu + Apache + WSGI

Neste mini tutorial descrevo com instalar/ativar o mod_wsgi no Apache no Ubuntu.

Assumindo que já estamos com o Apache2 instalado..vamos instalar o mod_wsgi:

sudo apt-get install libapache2-mod-wsgi

Agora vamos ativar o módulo:

sudo a2enmod mod-wsgi

OK, agora podemos reiniciar o Apache2:

sudo /etc/init.d/apache2 restart

OK, estamos com o módulo instalado e prontos para continuar, mas agora nós precisamos associar a extensão .wsgi em nosso servidor, pois isto fará os arquivos .wsgi usarem o mod_wsgi para processamento. Abra o arquivo de configuração do apache default:

sudo gedit /etc/apache2/sites-available/default

Aproximadamente na linha 10, você teve ter algo como isto:

Options Indexes FollowSymLinks MultiViews ExecCGI 
AllowOverride None 
Order allow,deny 
allow from all

Substitua por isto:

Options Indexes FollowSymLinks MultiViews ExecCGI 
AddHandler cgi-script .cgi 
AddHandler wsgi-script .wsgi 
AllowOverride None 
Order allow,deny 
allow from all

OK, agora podemos reiniciar o Apache2 novamente:

sudo /etc/init.d/apache2 restart

Tudo pronto !. Se você quiser que o arquivo index.wsgi atue como um index de diretório(como o index.htm, index.html, index.php), abra o arquivo /etc/apache2/mods-enabled/dir.conf:/

sudo gedit /etc/apache2/mods-enabled/dir.conf

Mude a linha 3(A linha que tem o DirectoryIndex) para:

DirectoryIndex index.html index.cgi index.pl index.php 
index.xhtml index.htm index.wsgi

Não esqueça de reiniciar o Apache, após processar as alterações.

Um programinha para testar:

def application(environ, start_response): 
    status = '200 OK' 
    output = 'Hello World!' 
    response_headers = [('Content-type', 'text/plain'),
 ('Content-Length', str(len(output)))] 
    start_response(status, response_headers) 
    return [output]

Salve o arquivo em /var/www com o nome de index.wsgi . Bons estudos.

Fonte: http://ubuntuforums.org/showthread.php?t=833766

Nenhum comentário