Como rodar scripts Python no servidor Apache
Se você deseja executar aplicações Python diretamente em um servidor com Apache, a forma mais recomendada é utilizar o módulo mod_wsgi. Este módulo permite que você integre aplicações web escritas em Python com o servidor Apache de forma eficiente e segura.
![]() |
Python - Executando no Apache com mod_wsgi | |
Canal Qb no YouTube |
1. Instalar o módulo mod_wsgi
O primeiro passo é instalar o módulo mod_wsgi no seu sistema. No Ubuntu, use o seguinte comando:
sudo apt-get install libapache2-mod-wsgi-py3
Certifique-se de instalar a versão que corresponde à versão do Python utilizada no seu projeto.
2. Criar um arquivo WSGI
Esse arquivo serve como ponte entre o Apache e o seu código Python. Crie um arquivo com extensão .wsgi
e insira o seguinte conteúdo:
import sys
sys.path.insert(0, '/caminho/para/seu/codigo/')
from seu_app import app as application
Altere /caminho/para/seu/codigo/
para o diretório onde seu aplicativo está localizado, e substitua seu_app
pelo nome do seu módulo Python.
3. Configurar o Apache
Adicione as seguintes diretivas no seu arquivo de configuração do Apache (httpd.conf
ou apache2.conf
):
WSGIScriptAlias / /caminho/para/seu/arquivo.wsgi
<Directory /caminho/para/seu/codigo/>
Require all granted
</Directory>
Novamente, substitua os caminhos para apontar corretamente para seus arquivos.
4. Reiniciar o Apache
Após configurar tudo, reinicie o Apache para aplicar as mudanças:
sudo systemctl restart apache2
5. Teste sua aplicação
Abra o navegador e acesse o endereço configurado para testar se a aplicação está funcionando corretamente. Caso encontre erros, consulte os logs de erro do Apache para verificar a origem do problema.
Referência oficial
Para mais detalhes, consulte a documentação oficial do mod_wsgi: https://modwsgi.readthedocs.io/
Nota: Embora o mod_wsgi seja ideal para projetos mais estáveis, considere também alternativas modernas como Gunicorn com Nginx para aplicações de maior escala.