Vou descrever aqui os passos para se configurar uma hospedagem Django + FastCGI na TeHospedo.
Acesse seu espaço no servidor de hospedagem via SSH, no Linux basta digitar no console:
ssh usuario@dominio
Já logado no ssh, na raiz
/home/usuario/digite
mkdir django_projects e
mkdir django_src
svn co http://code.djangoproject.com/svn/django/trunk/ django_srcisso ira baixar a ultima versão do Django na pasta “django_src”.
Edite o arquivo ".bash_profile" lembrando que esse arquivo fica na raiz e é invisível, para editar esse e qualquer outro arquivo eu recomendo o uso do editor nano, então digite
nano .bash_profilecom o arquivo aberto adicione as seguintes linhas no final do arquivo:
export PATH=$PATH:$HOME/django_src/django/bin
export PYTHONPATH=$PYTHONPATH:$HOME/django_src:$HOME/django_projects
source .bash_profilepara que o sistema "veja" o arquivo atualizado.
cd django_projectse execute
django-admin.py startproject meuprojetoaltere as permissões do arquivo settings.py
chmod 600 meuprojeto/settings.py
Volte para a raiz usando o comando “cd (espaço)” não é para digitar o “(espaço)” isso é apenas para dizer que após o “cd” vai um espaço, assim você volta para a raiz mais rapidamente. Vá para a pasta “public_html”, nesta pasta execute o seguinte
wget http://svn.saddi.com/py-lib/trunk/fcgi.pycom esse comando faremos o download do arquivo "fcgi.py" para a nossa pasta “public_html”. Vamos criar o arquivo “dispatch.fcgi”, execute
nano dispatch.fcgie dentro do arquivo inclua as seguintes linhas:
#!/usr/bin/python
import sys
sys.path += ['/home/usuario/django_src']
sys.path += ['/home/usuario/django_projects']
from fcgi import WSGIServer
from django.core.handlers.wsgi import WSGIHandler
import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'meuprojeto.settings'
WSGIServer(WSGIHandler()).run()
Salve e feche, vamos tornar esse arquivo e o "fcgi.py" executáveis, execute o comando
chmod +x dispatch.fcgi fcgi.py
nano .htaccesse dentro dele inclua as seguintes linhas:
RewriteEngine On
RewriteBase /
RewriteRule ^(dispatch\.fcgi/.*)$ - [L]
RewriteRule ^(.*)$ dispatch.fcgi/$1 [L]
Com isso você já pode abrir um browser e testar sua nova aplicação Django, se tudo ocorrer bem ira aparecer a pagina padrão do Django com a frase “It worked!”
Agora vamos nos aprofundar um pouco mais, o que fizemos foi apenas o básico, mas ainda temos que ver como configurar um subdomínio e as pastas “media”. Dentro da pasta “public_html” vamos criar links simbólicos para as pastas “media” que queremos usar. Criando um link para a pasta “media” do admin, execute o seguinte comando
ln -s $HOME/django_src/django/contrib/admin/media $HOME/public_html/admin_mediacom isso criamos um link chamado “admin_media” na pasta “public_html”, para outras pastas media faça a mesma coisa.
RewriteRule ^(admin_media/.*)$ - [L]pronto, com isso feito temos um link para a pasta media do admin pronta para ser usada em nosso projeto.
Configurar um subdomínio é fácil, após você ter criado um no cpanel teremos uma pasta nova no “public_html” com o nome do subdomínio, apenas copie os arquivos: .htaccess, dispatch.fcgi, fcgi.py e faça as alterações necessárias para o seu projeto, lembrando que o projeto deve ficar na pasta “django_projects”.
Para reiniciar seu projeto após uma atualização do mesmo, no terminal ssh digite "ps ux" e procure pelo processo que termina com "dispatch.fcgi" veja o numero PID dele é a segunda coluna, execute o comando "kill" e o numero do processo, feito isso você mata o processo e no próximo acesso ao site do projeto ele sera iniciado novamente com as alterações já prontas.
Era isso, qualquer coisa estou a disposição, é só deixar um comentário que assim que eu poder eu retorno.
OBS: Este tutorial foi levemente inspirado no wiki do dreamhost, isso não é uma tradução, e quem for perder tempo para comentar algo desnecessário compare os dois texto antes. http://wiki.dreamhost.com/index.php/Django
[]'s
Rafael,
Show de bola !!!, simples, objetivo e direto. Meus sinceros parabéns pelo artigo, vou aproveitar e vou informar ele para o meu provedor de hospedagem.
Um grande abraço do colega Leandro.
Rafael, obrigado novamente por ter ajudado durante os testes do Django na implementação da TeHospedo.
Publiquei em nosso blog os agradecimentos formais no post de lançamento da hospedagem de sites Django na TeHospedo.
Se precisar de uma versão mais recente do Python, podemos providenciar.
Muito bem explicado cara! Boa dica.
Apenas uma nota: o fcgi.py está sendo substituído pelo flup :D
Não conseguir fazer o deploy com esse tuto. O ssh continua acusando django 0.96 : /. Eu preciso desativar o django 0.96 ou fazer alguma coisa do genero? Dei um echo PYTHONPATH e o mais engraçado é que saiu certinho, com o caminho do django_src e tudo.
Feeds RSS
Ultimas Mensagens
Tags (categorias)
Links
Histórico