🐍 Configurando Apache com Python Django (WSGI) na SaveinCloud
⚠️ Todas as configurações demonstradas neste manual são exemplos simples e hipotéticos. Pode ser necessário realizar adaptações conforme a topologia do seu ambiente.
Este guia mostra como realizar o deploy de uma aplicação Django utilizando Apache com WSGI dentro da plataforma SaveinCloud.
✅ Requisitos recomendados
Antes de iniciar o deploy, certifique-se de que o projeto contenha:
-
Um arquivo
wsgi.pyconfigurado corretamente; -
Um arquivo
requirements.txtcom as dependências da aplicação; -
O arquivo
settings.pycom o parâmetroALLOWED_HOSTSpreenchido.
Parte 1 - Configurando o Apache Python na Topologia
🔧 Passo 1 – Montagem da Topologia
Adicione à camada de aplicação o Apache Python. Ajuste os cloudlets reservados e o limite de escalabilidade conforme a necessidade do seu projeto e aplique a alteração.

Opcional: Adicione um NGINX como Load Balancer e/ou um banco de dados (ex: MariaDB, MySQL).
Se utilizar o NGINX, siga a documentação específica.

📦 Passo 2 – Métodos de Deploy da Aplicação
A SaveinCloud oferece os seguintes métodos de deploy:
-
Arquivo local (.zip, .tar, etc.)
-
URL externa
-
Repositórios Git/SVN
Neste guia, utilizaremos o método via Git.
Selecione o nó Apache Python para iniciar o deploy:

🔓 Deploy via Repositório Público
- Acesse o menu de deploy e escolha a opção Git/SVN:

- Clique em Adicionar novo repositório:

- Após configurar, acompanhe o progresso do deploy:

- Quando finalizado com sucesso, a seguinte mensagem será exibida:

🔐 Deploy via Repositório Privado
- Gere um Personal Access Token no GitHub:
-
Acesse: Settings > Developer settings > Personal access tokens
-
Crie um token com permissão
repo


-
No painel da SaveinCloud, acesse novamente o menu de deploy e selecione Git/SVN.
-
Preencha os dados do repositório:
-
Marque a opção Usar autenticação
-
Insira o usuário e o token gerado

Parte 2 - Configuração do Projeto Django
⚙️ Passo 3 – Configurando o Ambiente
settings.py – Atualizando o ALLOWED_HOSTS:
ALLOWED_HOSTS = ['*']

wsgi.conf – Configurando o WSGI (Apache):
Edite o arquivo wsgi.conf na plataforma:
WSGIDaemonProcess apache user=apache group=apache processes=2 threads=10 python-path="/var/www/webroot/ROOT" python-home="/var/www/webroot/ROOT/venv"
ServerRoot "/var/www/webroot/ROOT/"
DocumentRoot "/var/www/webroot/ROOT/"

Variável WSGI_SCRIPT – Definindo caminho do wsgi.py
Acesse a aba Variáveis da plataforma e configure:
WSGI_SCRIPT=/var/www/webroot/ROOT/seu_app/wsgi.py

🐍 Passo 4 – Criando e Ativando a Virtualenv
Abra o WebSSH:
cd /var/www/webroot/ROOT
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
deactivate

⚠️ Versões do Django acima de 5.0 não são compatíveis com SQLite.
🔎 Passo 5 – Testando a Aplicação
Reinicie o ambiente e acesse a URL pública para testar.

Se tudo estiver correto, sua aplicação Django estará acessível.
📘 Documentação complementar:
🛠️ Troubleshooting
❌ 1. Erro: OperationalError: no such table: ...
Causa: Migrações não aplicadas.
Solução:
python manage.py makemigrations
python manage.py migrate
❌ 2. Erro: ModuleNotFoundError: No module named 'django'
Causa: venv desativada ou Django não instalado.
Solução:
source venv/bin/activate
pip install django
❌ 3. Aplicação não carrega após reinício
Causa comum: Caminho incorreto do WSGI_SCRIPT ou erro no wsgi.conf.
Verifique:
-
python-path,python-home -
ServerRoot,DocumentRoot -
Caminho do
wsgi.py