1- Requisitos
- PHP: 8.1 ou superior (recomendado 8.2)
- MySQL/MariaDB: 5.7+ / 10.4+
- Apache com `mod_rewrite` ativo
- Composer (para dependencias PHP)
2- Extensoes PHP recomendadas
Ative no servidor:
- `pdo_mysql`
- `curl`
- `mbstring`
- `openssl`
- `json`
- `fileinfo`
- `gd` (recomendado para imagens)
3- Tecnologias utilizadas
- Backend: PHP puro (sem framework)
- Banco: MySQL/MariaDB (PDO)
- Frontend: HTML, CSS, JavaScript
- UI: Bootstrap 5 + Bootstrap Icons
- Email: PHPMailer (via Composer)
- Pagamentos: Asaas (API + Webhook)
- Login social: Google OAuth
4- Estrutura principal
- `config/config.php`: configuracao base, sessao, conexao e URLs
- `admin/`: painel administrativo
- `minha-conta/`: area do cliente
- `api/`: endpoints (checkout, webhook, notificacoes)
- `assets/`: CSS/JS/imagens
- `database.sql`: estrutura base do banco
- `migrations/`: ajustes extras de banco
5- Instalacao local (XAMPP)
5.1 Copiar projeto
Coloque o projeto em:
C:\xampp\htdocs\nomedoprojeto`
5.2 Criar banco
1. Abra phpMyAdmin
2. Crie o banco (exemplo): `projeto`
3. Importe `database.sql`
4. Se existir necessidade, rode scripts em `migrations/`
5.3 Configurar variaveis de ambiente (opcional, recomendado)
O sistema ja possui fallback local, mas pode usar variaveis:
- `DB_HOST`
- `DB_PORT`
- `DB_NAME`
- `DB_USER`
- `DB_PASS`
- `DB_CHARSET`
Padrao local atual no codigo:
- host: `127.0.0.1`
- porta: `3307`
- banco: `projeto`
- usuario: `root`
5.4 Instalar dependencias PHP
No terminal, na raiz do projeto:
```bash
composer install
```
5.5 Permissoes de escrita
Garanta escrita em:
- `uploads/`
- `uploads/config/`
- `uploads/cache/`
5.6 Testar no navegador
- [http://localhost/projeto] (http://localhost/projeto)
- Admin: [http://localhost/projeto/admin/login.php] (http://localhost/projeto/admin/login.php)
6) Instalacao no cPanel
6.1 Upload
1. Compacte o projeto em `.zip`
2. Envie para `public_html` (ou subpasta)
3. Extraia mantendo estrutura
6.2 Banco de dados
1. Crie banco, usuario e senha no cPanel
2. Dê permissao total do usuario ao banco
3. Importe `database.sql` via phpMyAdmin
4. Rode SQL de `migrations/` se necessario
6.3 Configuracao de conexao
Defina variaveis de ambiente no cPanel (ou `.htaccess` com `SetEnv`), por exemplo:
- `DB_HOST`
- `DB_PORT`
- `DB_NAME`
- `DB_USER`
- `DB_PASS`
- `DB_CHARSET=utf8mb4`
6.4 Apache e URL amigavel
- Mantenha o arquivo `.htaccess` da raiz
- Certifique-se que `mod_rewrite` esta ativo
6.5 Composer em producao
No terminal SSH (se disponivel) ou local + upload da pasta `vendor/`:
```bash
composer install --no-dev --optimize-autoloader
```
6.6 SSL
Ative SSL no dominio (Lets Encrypt/cPanel AutoSSL).
## 7) Configuracao inicial no Admin
Acesse:
- `/admin/login.php`
- `/admin/config.php?tab=geral`
Configure:
- Nome do site
- Logo/favicon
- Cor primaria
- WhatsApp
- Google OAuth (se usar login Google)
- Asaas API Key e modo Sandbox/Producao
8- Asaas webhook (importante)
No Admin, na secao Asaas, existe campo com URL pronta de webhook.
Formato:
`https://SEU_DOMINIO/api/webhook-asaas.php`
No painel Asaas:
1. Abra Webhooks
2. Cadastre essa URL
3. Habilite eventos de pagamento
Observacao:
- Nao precisa cron para confirmacao de pagamentos.
- A confirmacao ocorre por webhook.
9- Cron (quando usar)
Para o fluxo atual de cobranca/pagamento, cron nao e obrigatorio.
Use cron apenas se futuramente criar rotinas agendadas (limpeza, relatorios, disparos, etc).
10- Seguranca recomendada
- Remover/renomear scripts de bootstrap apos uso (ex.: `criar-admin.php`)
- Manter `.env` e SQL sensiveis fora de acesso publico
- Forcar HTTPS
- Manter backup diario de banco e `uploads/`
11- Solucao de problemas rapida
- Erro 500: verificar logs do PHP/cPanel e extensoes ausentes
- Tela branca: habilitar logs de erro PHP temporariamente
- Sem login/email: conferir SMTP e `vendor/`
- Sem pagamento confirmado: validar webhook Asaas e URL publica
Dúvidas contrate o serviço de instalação da Fábrica dos Sites