Pular para o conteúdo principal

🐍 Perguntas Frequentes (Python)

1️⃣ Como faço o deploy de uma aplicação Flask na plataforma?

Crie um servidor Python na topologia e realize o deploy do projeto pelo painel (via GitHub, URL ou upload local).
Depois, acesse o ambiente pelo WebSSH e configure o ambiente virtual e as dependências.

2️⃣ Onde devo instalar as dependências da minha aplicação Flask?

Dentro do diretório do projeto, em /var/www/webroot/ROOT.
Ative um ambiente virtual com:

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

Se não houver requirements.txt, crie um com:

pip freeze > requirements.txt
3️⃣ Qual arquivo controla a inicialização da aplicação Flask no Apache (mod_wsgi)?

O arquivo wsgi.py, localizado dentro do diretório do projeto.
Exemplo mínimo:

from app import app as application
4️⃣ Onde fica o diretório principal da aplicação Flask dentro do ambiente SaveinCloud?

O diretório padrão é /var/www/webroot/ROOT.
É nele que ficam os arquivos do projeto, o wsgi.py e o ambiente virtual (venv).

5️⃣ Qual parâmetro em settings.py precisa ser configurado para que o Django aceite conexões externas?

O parâmetro ALLOWED_HOSTS, que deve conter ['*'] em ambiente de teste ou os domínios corretos em produção.

6️⃣ Onde devo configurar o ALLOWED_HOSTS no Django?

No arquivo settings.py.
Em produção, é recomendado definir apenas os domínios confiáveis.

7️⃣ Qual a função do arquivo wsgi.conf no deploy de projetos Django?

O wsgi.conf (em /etc/httpd/conf.d/) é responsável por carregar a aplicação Django no Apache com mod_wsgi.
Nele configuramos o python-path (diretório do projeto) e o python-home (variável de ambiente usada pelo Django).

8️⃣ Posso ter mais de uma “venv” em projetos Django?

✅ Sim.
É possível criar múltiplos ambientes virtuais para gerenciar diferentes versões de pacotes.
É importante confirmar qual ambiente (venv, venv2, etc.) está sendo usado no projeto.

9️⃣ Qual versão do Django devo instalar para usar SQLite?

É necessário usar Django 3.x.
As versões 4+ e 5+ são recomendadas para bancos de dados mais robustos (PostgreSQL, MySQL, etc.), mas não recomendamos SQLite em produção.

🔟 Por que preciso reiniciar a instância após configurar o Django?

O restart garante que o Apache (mod_wsgi) recarregue as novas configurações do projeto, do ambiente virtual e das dependências instaladas.

1️⃣1️⃣ O que pode causar uma página em branco ou erro “Not Found” após o deploy de uma aplicação Flask?

Geralmente ocorre quando o WSGIScriptAlias está configurado com caminho incorreto no wsgi.conf ou quando o arquivo wsgi.py está ausente ou mal configurado.

1️⃣2️⃣ Qual arquivo lista as dependências que devem ser instaladas em um projeto Python?

O arquivo requirements.txt, onde ficam listados os pacotes e versões necessários para a aplicação.

1️⃣3️⃣ O que fazer quando alterações no código não aparecem ao acessar a aplicação no navegador?

Isso pode ser causado por cache do navegador ou do Apache.
➡️ Solução: reinicie o node Apache pela plataforma e limpe o cache do navegador (ou acesse em modo anônimo).

1️⃣4️⃣ Como configurar o caminho do wsgi.py corretamente no ambiente SaveinCloud?

Através da variável WSGI_SCRIPT nas variáveis da plataforma, apontando para o caminho do arquivo.
Exemplo: /var/www/webroot/ROOT/seu_app/wsgi.py.

1️⃣5️⃣ Qual a causa mais comum do erro ModuleNotFoundError: No module named 'django'?

O ambiente virtual (venv) não está ativo ou o Django não foi instalado dentro dele.