# Guia de Deploy — Comunidade 360

## Requisitos do servidor

- PHP 8.1+ com extensões: PDO, PDO_MySQL, mbstring, json, openssl, fileinfo
- MySQL 5.7+ ou MariaDB 10.6+
- Apache com mod_rewrite habilitado
- Composer 2.x

## Passos no cPanel

### 1. Banco de dados

No cPanel → Bancos de Dados MySQL:
1. Crie um banco: `meusite_comunidade360`
2. Crie um usuário com senha forte
3. Vincule o usuário ao banco com **Todos os privilégios**

### 2. Upload dos arquivos

Via cPanel File Manager ou FTP, envie **todo o conteúdo** da pasta `comunidade360/` para uma pasta **fora** do `public_html`. Exemplo:

```
/home/seuuser/comunidade360/   ← raiz do projeto (fora do public_html)
/home/seuuser/public_html/     ← document root do domínio
```

Depois mova o **conteúdo de `public/`** para dentro de `public_html/`:

```
/home/seuuser/public_html/index.php
/home/seuuser/public_html/.htaccess
/home/seuuser/public_html/assets/
```

### 3. Ajuste o caminho em public/index.php

```php
define('BASE_PATH', '/home/seuuser/comunidade360');
```

### 4. Configure o .env

Copie `.env.example` para `.env` na raiz do projeto e preencha:

```env
APP_ENV=production
APP_URL=https://seudominio.com.br
DB_HOST=localhost
DB_DATABASE=meusite_comunidade360
DB_USERNAME=meusite_user
DB_PASSWORD=SenhaForte123!
```

### 5. Instale o Composer

Via SSH no cPanel:

```bash
cd /home/seuuser/comunidade360
composer install --no-dev --optimize-autoloader
```

Ou baixe o `vendor/` gerado localmente e envie via FTP.

### 6. Execute as migrations

```bash
php database/migrate.php
php database/seed.php
```

### 7. Permissões de pasta

```bash
chmod 755 storage/
chmod 755 storage/logs/
chmod 755 storage/private_uploads/
chmod 755 storage/cache/
chmod 755 storage/exports/
```

### 8. Primeiro acesso

- URL: `https://seudominio.com.br/login`
- E-mail: `admin@gracaepaz.com.br`
- Senha: `admin123`

**⚠️ Troque a senha imediatamente após o primeiro login!**

---

## Estrutura de pastas no servidor

```
/home/seuuser/
├── comunidade360/          ← raiz do projeto (protegida)
│   ├── app/
│   ├── config/
│   ├── database/
│   ├── storage/
│   ├── vendor/
│   ├── .env
│   └── composer.json
└── public_html/            ← document root do domínio
    ├── index.php
    ├── .htaccess
    └── assets/
```

---

## Manutenção

### Logs de erro

```bash
tail -f /home/seuuser/comunidade360/storage/logs/app.log
```

### Backup do banco

```bash
mysqldump -u usuario -p banco > backup_$(date +%Y%m%d).sql
```

---

## Segurança

- Nunca deixe `.env` acessível via HTTP
- O `.htaccess` já bloqueia acesso direto a `.env` e `composer.json`
- Configure HTTPS (Let's Encrypt grátis no cPanel)
- Mantenha o PHP atualizado
