Passo a Passo do Instalador Web
O FeedbackPulse SaaS inclui um instalador elegante baseado no navegador. Nenhuma linha de comando necessária (após o upload inicial dos arquivos e o composer install).
Acessando o Instalador
Acesse:
https://yourdomain.com/install
Não consegue ver o instalador? Certifique-se de que:
- Seu servidor web aponta para o diretório
public/- O Apache
mod_rewriteestá habilitado (ou o Nginx tem otry_filescorreto)- Não há arquivo
storage/installed.lock(isso bloqueia o instalador após a primeira instalação)
Etapa 1: Boas-Vindas & Licença
A primeira tela dá as boas-vindas e solicita seu código de compra Envato/CodeCanyon.
Onde encontrar seu código de compra:
- Faça login no CodeCanyon
- Vá em Downloads → encontre o FeedbackPulse SaaS
- Clique em Download → Certificado de licença e código de compra
- O código de compra tem este formato:
a1b2c3d4-e5f6-7890-abcd-ef1234567890
O que faz:
- Valida sua licença com a API da Envato
- Garante que você tem uma cópia legítima
- Desbloqueia o restante do instalador
Etapa 2: Verificação de Requisitos
O instalador verifica automaticamente seu servidor e confere:
Versão do PHP
- PHP 8.4 ou superior é necessário
- Exibe sua versão atual do PHP
Dependências do Vendor
- Verifica se
vendor/autoload.phpexiste (as dependências do Composer devem estar instaladas ou enviadas)
Extensões PHP
As seguintes são verificadas:
pdo_mysql— Conectividade com banco de dadosmbstring— Manipulação de stringsopenssl— Criptografiatokenizer— Análise de códigoxml— Processamento XMLctype— Validação de caracteresjson— Manipulação JSONbcmath— Operações matemáticasfileinfo— Detecção de tipo de arquivocurl— Chamadas de API
Permissões de Diretório
storage/— Deve ser gravávelbootstrap/cache/— Deve ser gravável
Exibição de Resultados
- Marcas de verificação verdes = requisito atendido
- Cruzes vermelhas = requisito NÃO atendido (deve corrigir antes de prosseguir)
Corrigindo verificações com falha:
# Instalar extensões PHP faltando (Ubuntu)
sudo apt install php8.4-mysql php8.4-mbstring php8.4-xml php8.4-bcmath php8.4-curl php8.4-gd php8.4-zip
# Corrigir permissões
sudo chmod -R 775 storage bootstrap/cache
sudo chown -R www-data:www-data storage bootstrap/cache
# Reiniciar PHP
sudo systemctl restart php8.4-fpm
Etapa 3: Configuração do Banco de Dados
Insira os detalhes de conexão do seu MySQL/MariaDB:
| Campo | Exemplo | Observações |
|---|---|---|
| Host do Banco de Dados | 127.0.0.1 | Use 127.0.0.1 em vez de localhost para maior confiabilidade |
| Porta do Banco de Dados | 3306 | Porta padrão do MySQL |
| Nome do Banco de Dados | feedbackpulse | Deve existir previamente! |
| Usuário do Banco de Dados | feedbackpulse_user | Com privilégios completos no banco de dados |
| Senha do Banco de Dados | your_secure_password | A senha do usuário |
Antes Desta Etapa
Você deve criar o banco de dados primeiro:
-- Fazer login no MySQL
mysql -u root -p
-- Criar o banco de dados
CREATE DATABASE feedbackpulse CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- Criar um usuário dedicado (recomendado)
CREATE USER 'feedbackpulse_user'@'localhost' IDENTIFIED BY 'your_secure_password';
GRANT ALL PRIVILEGES ON feedbackpulse.* TO 'feedbackpulse_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
O que Acontece ao Clicar em "Configurar Banco de Dados"
- O instalador testa a conexão
- Salva suas credenciais do banco de dados no arquivo
.env - Executa todas as migrações do banco de dados (cria ~30 tabelas)
- Popula dados padrão:
- 3 planos de assinatura padrão (Starter, Growth, Pro)
- Configurações padrão da plataforma
- Exibe uma mensagem de sucesso
Nota: Os drivers de sessão e cache permanecem como
filedurante a instalação para estabilidade. Eles são alterados automaticamente paradatabasena etapa de conclusão.
Esta etapa pode levar de 10 a 30 segundos dependendo do seu servidor.
Etapa 4: Conta de Admin
Crie sua conta de superadmin:
| Campo | Exemplo | Observações |
|---|---|---|
| Nome Completo | João Silva | Seu nome de exibição |
| Endereço de E-mail | [email protected] | Usado para login e notificações |
| Senha | (senha forte) | Mínimo de 8 caracteres. Use uma senha forte! |
| Confirmar Senha | (deve coincidir) | Deve coincidir |
O que Acontece
- Cria sua conta de usuário com
role = superadmin - Esta é a única conta de superadmin criada automaticamente
- Você usará isso para fazer login em
/logine acessar/admin/dashboard
Dica de segurança: Use uma senha única e forte. Você pode habilitar o 2FA mais tarde nas Configurações.
Etapa 5: Configuração de E-mail
Configure o SMTP para envio de e-mails transacionais:
| Campo | Exemplo | Observações |
|---|---|---|
| Host SMTP | smtp.gmail.com | Servidor SMTP do seu provedor de e-mail |
| Porta SMTP | 587 | 587 para TLS, 465 para SSL |
| Usuário SMTP | [email protected] | Geralmente seu endereço de e-mail |
| Senha SMTP | your_app_password | Senha específica de app recomendada |
| Criptografia | tls | TLS (recomendado) ou SSL |
| Endereço De | [email protected] | O endereço "de" nos e-mails enviados |
| Nome De | FeedbackPulse | O nome "de" nos e-mails enviados |
Provedores SMTP Comuns
| Provedor | Host | Porta | Criptografia | Observações |
|---|---|---|---|---|
| Gmail | smtp.gmail.com | 587 | TLS | Requer Senha de App (não a senha regular) |
| Mailgun | smtp.mailgun.org | 587 | TLS | Ótimo para e-mail transacional |
| Amazon SES | email-smtp.{region}.amazonaws.com | 587 | TLS | Econômico em escala |
| SendGrid | smtp.sendgrid.net | 587 | TLS | Use apikey como usuário |
| Postmark | smtp.postmarkapp.com | 587 | TLS | Melhor entregabilidade |
| Mailtrap | sandbox.smtp.mailtrap.io | 587 | TLS | Apenas para testes! |
Não consegue configurar o e-mail agora? Você pode pular esta etapa e configurar depois em
Admin → Configurações → E-mail. A plataforma funcionará sem e-mail, mas recursos como convites, resumos e redefinições de senha não funcionarão.
Etapa 6: Instalação Concluída!
Você verá uma página de sucesso com:
- Banco de dados configurado e migrado
- Conta de admin criada
- E-mail configurado
- Arquivo
installed.lockcriado - Drivers de sessão e cache alterados para
database CRON_TOKENgerado automaticamente para cron baseado na web- Aviso de hospedagem compartilhada (se o link simbólico não pôde ser criado)
Instruções do Cron Job (exibidas na página de conclusão)
A página de conclusão exibe duas opções de configuração de cron com comandos para copiar e colar:
-
Comando CLI — para servidores VPS/dedicados:
* * * * * cd /path/to/project && php artisan schedule:run >> /dev/null 2>&1 -
URL/wget — para hospedagem compartilhada (usa o
CRON_TOKENgerado automaticamente):wget -q -O /dev/null "https://yourdomain.com/cron/run?token=YOUR_CRON_TOKEN"
Salve-os! Copie o comando cron da página de conclusão antes de sair. Você também pode encontrar seu
CRON_TOKENno arquivo.env.
O Arquivo installed.lock
O instalador cria storage/installed.lock para impedir que qualquer pessoa execute novamente o instalador. Esta é uma medida de segurança.
Para executar novamente o instalador (ex.: instalação limpa), exclua este arquivo:
rm storage/installed.lockEntão acesse
/installnovamente.
Lista de Verificação Pós-Instalação
Após a conclusão do instalador:
- Configure o cron job usando as instruções exibidas na página de conclusão (consulte Cron Jobs & Workers de Fila)
- Faça login em
https://yourdomain.com/logincom suas credenciais de superadmin - Acesse
Admin → Planos— revise e personalize os planos de assinatura - Acesse
Admin → Configurações → Pagamentos— conecte Stripe/PayPal - Acesse
Admin → Configurações → E-mail— envie um e-mail de teste - Acesse
Admin → Landing Page— personalize sua página inicial pública - Configure SSL (consulte Certificados SSL)
- Opcionalmente configure DNS wildcard (consulte Configuração de DNS Wildcard)
Próximos Passos
- Configuração do Apache ou Configuração do Nginx
- Variáveis de Ambiente — ajuste fino do seu
.env - Cron Jobs & Workers de Fila — configure tarefas automatizadas