Django com FastCGI

Antes de utilizar o FastCGI para o Django, é necessário solicitar via ticket a criação do ambiente VirtualEnv, no qual é um requisito necessário para a execução do mesmo.

Django pode ser instalado em um ambiente compartilhado apenas se você usar FastCGI.

Nota: Você vai precisar do módulo Flup e Django instalado. Servidores dedicados podem usar estas instruções, mas os planos compartilhados e de revenda, já tem esses módulos instalados.

Em primeiro lugar, precisamos instalar o módulo Flup e Django. Podemos usar easy_install para fazer isso.

Execute os comandos:

easy_install flup
easy_install django

Você não possui easy_install no seu servidor?

 1. Acesse http://pypi.python.org/pypi/setuptools# files e faça download do egg apropriado para sua versão do Python, ou seja, setuptools-0.6c11-py2.4.egg. NÃO renomeie o arquivo!  

2. Execute-o como se fosse um script:

sh setuptools-0.6c11-py2.4.eg

 

Setuptools será instalado utilizando a versão correspondente do Python (normalmente python2.4), e vai colocar o easy_install executável no local padrão para a instalação de scripts em Python.

Volte para o topo desta página e tente executar as duas linhas do easy_install, mais uma vez.


Nota: Esta próxima parte pode ser feito por qualquer usuário que tenha acesso SSH. Isto inclui planos ompartilhados revendas e servidores dedicados.

Criar um novo projeto do Django ou fazer upload de seu projeto existente (não será mostrado). Pode ser uma boa idéia criar um projeto fictício apenas para ter uma base para testar a sua instalação.

Para iniciar um novo projeto, execute os  comandos seguintes:

django-admin.py startproject newproject
cd newproject
chmod +x manage.py
./manage.py startapp newapp

Nota: Esta última parte pode ser feito por qualquer usuário que tenha acesso SSH. Isto inclui planos compartilhados revendas e servidores dedicados.

Crie o arquivo index.fcgi  e coloque-o dentro do seu diretório www (public_html) ou no diretório de trabalho  que você esteja usando. Altere as permissões do arquivo para 0755. Em seguida, edite o arquivo e insira o código seguinte:

#!/usr/bin/python
import sys, os

# Add a custom Python path. (optional)
sys.path.insert(0, "/home/username")

# Switch to the directory of your project.
os.chdir("/home/username/newproject")

# Set the DJANGO_SETTINGS_MODULE environment variable.
os.environ['DJANGO_SETTINGS_MODULE'] = "newproject.settings"

from django.core.servers.fastcgi import runfastcgi
runfastcgi(method="threaded", daemonize="false")

O código acima funciona para qualquer pessoa que, literalmente, seguiu os comandos anteriores para instalar o Django e criar um novo projeto. Se você mudou o nome do projeto ou diretório, você vai precisar fazer as mesmas alterações para o código acima.

Finalmente, aqui estão as regras para seu arquivo .htaccess. (rewrite rules)   que pertencem ao mesmo diretório do seu novo arquivo index.fcgi.

AddHandler fcgid-script .fcgi
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.fcgi/$1 [QSA,L]

Nota: Se você tiver mais de uma instalação do Python, você pode precisar especificar para qual você está instalando setuptools. 

Veja como resolver o problema do SSH:

wget http://peak.telecommunity.com/dist/ez_setup.py
/usr/bin/python ez_setup.py
/usr/bin/easy_install django flup==1.0.2
  • Django com FastCGI
  • 0 Usuários acharam útil
Esta resposta lhe foi útil?

Artigos Relacionados

Acessando email através do navegador (webmail)

Você pode acessar sua conta de email digitando no seu navegador, www.webmail.seudominio.com/ ou...

Alteração das configurações de Envio de Email

Seguindo uma recomendação do Comitê Gestor da Internet para diminuir o volume de spams na...

Ativando o SpamAssassin

O SpamAssasim é um aplicativo que trabalha em conjunto com o serviço de e-mail do servidor afim...

Autenticação no recebimento de email.

Para garantir o sucesso no envio de mensagens do seu serviço de e-mail através de gerenciadores...

Bloqueando spam com Spam Assassin

Bloqueio de Spam   O SpamAssassin trabalha com scores ( pontuções ) que vai de 0 a 10, quanto...