Mudanças entre as edições de "Instalando o mod wsgi Python e Configurando o Django em máquinas com Cpanel"
(Criou página com ' Antes, queremos que saiba que, trabalhar com aplicativos fora do painel, podem ocorrer situações que, se danificarem o mesmo, muitas vezes poderá não ser arrumado, onde a...') |
|||
Linha 24: | Linha 24: | ||
Entre no como usuário root, vá em '''WHM>>Service Configuration »Apache Configuration>>Include Editor'''. | Entre no como usuário root, vá em '''WHM>>Service Configuration »Apache Configuration>>Include Editor'''. | ||
− | [[File:2013-11-22_14-43-53.png|frame|none|alt=Alt text]] | + | [[File:2013-11-22_14-43-53.png|frame|none|alt=Alt text|link=]] |
Adicione as linhas abaixo em '''Pre Main Include''': | Adicione as linhas abaixo em '''Pre Main Include''': | ||
Linha 32: | Linha 32: | ||
AddHandler wsgi-script .wsgi | AddHandler wsgi-script .wsgi | ||
− | [[File:2013-11-22_14-44-14.png|frame|none|alt=Alt text]] | + | [[File:2013-11-22_14-44-14.png|frame|none|alt=Alt text|link=]] |
Confirme no botão '''Update''' e depois no '''Restart''' para reiniciar o Apache. | Confirme no botão '''Update''' e depois no '''Restart''' para reiniciar o Apache. |
Edição das 13h56min de 6 de abril de 2015
Antes, queremos que saiba que, trabalhar com aplicativos fora do painel, podem ocorrer situações que, se danificarem o mesmo, muitas vezes poderá não ser arrumado, onde até mesmo uma reinstalação deverá ser feita. Não nos responsabilizamos e nem disponibilizamos suporte para tais eventuais situações, sem custo. Lembre-se que o suporte é exclusivo para o que o painel fornece como características. O nosso suporte também não vai lhe ajudar no Django e nem responderemos mais a questões relacionadas ao tutorial abaixo. Eventuais erros que vier a ter, pedimos que pesquise a respeito em sites e fóruns especializados. Esperamos que compreenda.
- Como instalar o WSGI
Baixe e compile o wsgi no SSH, como usuário root:
cd /usr/local/src/
wget http://modwsgi.googlecode.com/files/mod_wsgi-2.3.tar.gz
gzip -dc mod_wsgi-2.3.tar.gz | tar xf -
cd mod_wsgi-2.3
./configure
make && make install
Após compilado, terá o módulo no seguinte caminho /usr/local/apache/modules/mod_wsgi.so.
Entre no como usuário root, vá em WHM>>Service Configuration »Apache Configuration>>Include Editor.
Adicione as linhas abaixo em Pre Main Include:
LoadModule wsgi_module /usr/local/apache/modules/mod_wsgi.so
AddHandler wsgi-script .wsgi
Confirme no botão Update e depois no Restart para reiniciar o Apache.
- Instalando o Django
Baixando e instalando a versão 1.4.2
cd /usr/local/src
wget https://www.djangoproject.com/download/1.4.2/tarball/
tar xzvf Django-1.4.2.tar.gz
cd Django-1.4.2
python setup.py install
Se ocorreu tudo OK, verá isto como última linha:
Writing /usr/lib/python2.6/site-packages/Django-1.4.2-py2.6.egg-info
Por fim, teste assim no terminal SSH:
python -c "import django; print(django.get_version())"
Se aparecer a versão, está tudo certo, você conseguiu.
- Como integrar ao domínio
Você precisa executá-lo em um domínio/usuário. Primeiro, precisa criar seu wsgi app que irá chamar a aplicação Django.
No exemplo, temos um usuário chamado jvworld, com um domínio javaworld.com.br. Veja como nós o configuramos:
Dentro do diretório /home/jvworld/public_html, onde colocaremos nosso aplicativo, criamos o arquivo django.wsgi com o seguinte código python:
import os, sys
sys.path.append('/home/jvworld/public_html')
sys.path.append('/home/jvworld/public_html/jworld')
os.environ['DJANGO_SETTINGS_MODULE'] = 'jworldcombr.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
Por fim, a integração com o domínio, usando o usuário root para criar o arquivo, via SSH:
Cria os diretórios
mkdir -p /usr/local/apache/conf/userdata/std/2/jvworld/javaworld.com.br/
Cria o arquivo de configuração do WSGI
vi /usr/local/apache/conf/userdata/std/2/jvworld/javaworld.com.br/wsgi.conf
Adicione o seguinte conteúdo (mude para seu usuário e aplicativo):
<IfModule mod_alias.c>
Alias /robots.txt /home/jvworld/public_html/jworld/media/robots.txt
Alias /favicon.ico /home/jvworld/public_html/jworld/media/favicon.ico
Alias /media /home/jvworld/public_html/jworld/media
Alias /adminmedia /home/jvworld/public_html/jworld/media/adminmedia
</IfModule>
<IfModule mod_wsgi.c>
WSGIScriptAlias / /home/jvworld/public_html/django.wsgi
WSGIDaemonProcess javaworld.com.br threads=15 display-name=%{GROUP}
WSGIProcessGroup javaworld.com.br
WSGIApplicationGroup %{GLOBAL}
</IfModule>
As instruções acima fará com que, ao digitar o domínio, apareça o aplicativo Django.
Reinicie o Apache com estes dois comandos abaixo:
/scripts/rebuildhttpdconf
/etc/init.d/httpd restart
Se ao fazer o comando /scripts/rebuildhttpdconf, aparecer um erro, significa que configurou algo errado no wsgi.conf.
- Logs de erros (caso apareça o erro 500 no browser ao abrir o domínio configurado)
Leia os erros do Apache no seguinte endereço abaixo, como usuário root, com o comando:
tail -100 /usr/local/apache/logs/error_log
PS: Para remover o mapeamento, basta retirar o "wsgi.conf" do diretório criado ou modificar o final ".conf" por outro nome e refazer os dois comandos dados para reiniciar o Apache acima.
PS2: É necessário conhecimentos básicos de terminal Linux para inserir dados.