Como instalar uma aplicação Django?
De Wiki Locaweb
Antes de mais nada, para saber se sua conta suporta Python, entre nela via SSH e digite o comando:
cat /etc/redhat-release
Se for RedHat 5 você já tem Python e já pode seguir este tutorial. Caso contrário será necessário abrir um chamado para pedir migração para uma máquina mais atualizada.
Para começar não se esqueça de configurar seus domínios pelo Painel de Controle. Para este exemplo, suponha que você criou um Site Adicional ou Site Principal, chamado “exemplo.tempsite.ws” apontando para a pasta “~/public_html/djangodemo”. Lembre-se que existe um tempo de recarga da configuração no Apache - que pode chegar a 1 hora - e o tempo de propagação do DNS caso você tenha acabado de se registrar.
Claro, “djangodemo” é apenas um nome de exemplo, substitua pelo nome correto da sua aplicação.
Recomenda-se criar e desenvolver suas aplicações na sua máquina local e só depois de pronta transferir os arquivos à sua conta.
Via SSH, na linha de comando da sua conta, faça assim:
> user-wsgi-autostart djangodemo
Isso criará um projeto Django vazio (que você pode substituir por uma aplicação em Pylons, por exemplo) no diretório “~/wsgi_apps/djangodemo”. Coloque sua aplicação nesse diretório, seja via FTP ou SFTP. A pasta “~/public_html/djangodemo” também será criada e configurada automaticamente, sem sua intervenção.
Finalmente, ainda é preciso “dizer” ao Apache que você quer ativar a funcionalidade de WSGI. Você deve habilitar o WSGI para cada um dos domínios onde deseja instalar sua aplicação Web. Por exemplo:
> user-wsgi-activate exemplo.tempsite.ws
Lembre-se que isso exige que o Apache recarregue a configuração, isso costuma acontecer a cada 2 horas, por isso pode não ser imediato. Se quiser desativar esse suporte, faça:
> user-wsgi-deactivate exemplo.tempsite.ws
E para listar os domínios configurados com WSGI use o seguinte comando:
> user-wsgi-list wsgi: [ exemplo.dominio.ws www.exemplo.dominio.ws wap.exemplo.dominio.ws ]
Desta maneira, você pode instalar quantas aplicações web Python quiser. Nesse caso:
- Crie um novo projeto com user-wsgi-autostart
- Transfira os arquivos do seu projeto no diretório correto
- Ative seu domínio usando o comando user-wsgi-activate
Pronto! Sua aplicação está pronta para funcionar!
Observação: no exemplo acima, sua aplicação estará disponível pela URL http://exemplo.tempsite.ws. Mas digamos que você queira algo assim: http://exemplo.tempsite.ws/djangodemo. Ou seja, você quer múltiplas aplicações no mesmo domínio?
Nesse caso, pelo Gerenciador de Domínio, você apontará o domínio “exemplo.tempsite.ws” diretamente para “~/public_html”
O resto dos passos é o mesmo, mas será necessário um pequeno ajuste. Edite o arquivo “~/public_html/djangodemo/.htaccess” e modifique a linha:
RewriteRule ^(.*)$ /index.wsgi/$1 [QSA,PT,L]
Para:
RewriteRule ^(.*)$ /djangodemo/index.wsgi/$1 [QSA,PT,L]
Isso deve fazer com a aplicação passe a funcionar.
Dicas
Para reinicializar a aplicação você pode usar o commando:
touch ~/public_html/djangodemo/index.wsgi
Arquivos de mídia (css, imagems etc.) do django.contrib.admin:
cp -r /usr/lib/python2.6/site-packages/django/contrib/admin/media ~/public_html/djangodemo/
Para executar comandos deverá utilizar a versão 2.6 do python
python2.6 manage.py syncdb

