# 🚀 Guia Completo - Passo a Passo Apache

Guia super simples com comandos prontos para copiar e colar.

---

## 📍 ONDE ESTÁ VOCÊ AGORA?

- ✅ **Passos 1-2:** No seu **COMPUTADOR MAC** (onde está o código)
- ✅ **Passos 3-10:** No **SERVIDOR** (via SSH)

---

## ✅ PASSO 1: Criar o Build (NO SEU MAC)

**1.1 - Abra o Terminal no seu Mac**

**1.2 - Copie e cole este comando:**

```bash
cd /Users/230417/SmartAgendaMobile/web
```

**1.3 - Pressione Enter**

**1.4 - Copie e cole este comando:**

```bash
npm run build
```

**1.5 - Pressione Enter e aguarde (1-2 minutos)**

**1.6 - Verifique se funcionou (deve aparecer "✓ built"):**

```bash
ls -la dist/
```

**Deve aparecer:** `index.html` e uma pasta `assets/`

---

## ✅ PASSO 2: Verificar Build (OPCIONAL - NO SEU MAC)

**2.1 - Ainda no terminal do Mac, copie e cole:**

```bash
npm run preview
```

**2.2 - Abra o navegador e acesse:** `http://localhost:4173`

**2.3 - Se estiver funcionando, volte ao terminal e pressione:** `Ctrl+C`

---

## ✅ PASSO 3: Conectar ao Servidor

**3.1 - No terminal do Mac, copie e cole (ajuste o IP/domínio):**

```bash
ssh santospap@SEU-IP-OU-DOMINIO
```

**Exemplo:** `ssh santospap@192.168.1.100` ou `ssh santospap@meuservidor.com`

**3.2 - Digite a senha quando pedir**

**3.3 - Agora você está no servidor!**

---

## ✅ PASSO 4: Criar Pasta no Servidor

**4.1 - No servidor (via SSH), copie e cole:**

```bash
sudo mkdir -p /var/www/html/smart-agenda
```

**4.2 - Pressione Enter e digite a senha se pedir**

---

## ✅ PASSO 5: Copiar Arquivos (DO SEU MAC PARA O SERVIDOR)

**5.1 - Abra um NOVO terminal no seu Mac** (não feche o SSH)

**5.2 - Copie e cole este comando (ajuste o IP/domínio):**

```bash
scp -r /Users/230417/SmartAgendaMobile/web/dist/* santospap@SEU-IP-OU-DOMINIO:/var/www/html/smart-agenda/
```

**Exemplo:** `scp -r /Users/230417/SmartAgendaMobile/web/dist/* santospap@192.168.1.100:/var/www/html/smart-agenda/`

**5.3 - Digite a senha quando pedir**

**5.4 - Aguarde os arquivos serem copiados**

**5.5 - Verifique se os arquivos foram copiados (volte ao terminal SSH do servidor):**

```bash
ls -la /var/www/html/smart-agenda/
```

**Deve aparecer:** `index.html` e pasta `assets/`

---

## ✅ PASSO 6: Criar Arquivo .htaccess (NO SERVIDOR)

**6.1 - No servidor (via SSH), copie e cole:**

```bash
sudo nano /var/www/html/smart-agenda/.htaccess
```

**6.2 - Pressione Enter**

**6.3 - Cole este conteúdo (Ctrl+V ou botão direito > Paste):**

```apache
<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /index.html [L]
</IfModule>
```

**6.4 - Para salvar:**
- Pressione `Ctrl+O`
- Pressione `Enter`
- Pressione `Ctrl+X`

---

## ✅ PASSO 7: Configurar Permissões (NO SERVIDOR)

**7.1 - No servidor, copie e cole:**

```bash
sudo chown -R www-data:www-data /var/www/html/smart-agenda
```

**7.2 - Pressione Enter**

**7.3 - Copie e cole:**

```bash
sudo chmod -R 755 /var/www/html/smart-agenda
```

**7.4 - Pressione Enter**

**Nota:** Se usar CentOS/RHEL, use `apache:apache` em vez de `www-data:www-data`

---

## ✅ PASSO 8: Habilitar Módulo Rewrite (NO SERVIDOR)

**8.1 - Verifique qual sistema está usando:**

```bash
cat /etc/os-release
```

**8.2a - Se for Ubuntu/Debian, copie e cole:**

```bash
sudo a2enmod rewrite
sudo systemctl restart apache2
```

**8.2b - Se for CentOS/RHEL, copie e cole:**

```bash
sudo systemctl restart httpd
```

---

## ✅ PASSO 9: Verificar se Está Funcionando

**9.1 - No navegador do seu computador, acesse:**

```
http://SEU-IP-OU-DOMINIO/smart-agenda/
```

**Exemplo:** `http://192.168.1.100/smart-agenda/`

**9.2 - Deve aparecer a aplicação Smart Agenda!**

**9.3 - Teste as rotas:**
- `http://SEU-IP/smart-agenda/login`
- `http://SEU-IP/smart-agenda/explorar`

---

## ✅ PASSO 10: Configurar Domínio (OPCIONAL)

Se quiser usar um domínio (ex: `smartagenda.com`) em vez do IP:

**10.1 - No servidor, copie e cole (Ubuntu/Debian):**

```bash
sudo nano /etc/apache2/sites-available/smart-agenda.conf
```

**10.2 - Cole este conteúdo (ajuste o domínio):**

```apache
<VirtualHost *:80>
    ServerName seu-dominio.com
    ServerAlias www.seu-dominio.com
    DocumentRoot /var/www/html/smart-agenda
    <Directory /var/www/html/smart-agenda>
        Options -Indexes +FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
    ErrorLog ${APACHE_LOG_DIR}/smart-agenda-error.log
    CustomLog ${APACHE_LOG_DIR}/smart-agenda-access.log combined
</VirtualHost>
```

**10.3 - Salve:** `Ctrl+O`, `Enter`, `Ctrl+X`

**10.4 - Ative o site:**

```bash
sudo a2ensite smart-agenda.conf
sudo systemctl reload apache2
```

---

## 🔧 SE ALGO DER ERRADO

### Problema: Página em branco

**No servidor, execute:**

```bash
sudo chmod -R 755 /var/www/html/smart-agenda
sudo chown -R www-data:www-data /var/www/html/smart-agenda
```

### Problema: Rotas não funcionam (404)

**No servidor, execute:**

```bash
sudo a2enmod rewrite
sudo systemctl restart apache2
ls -la /var/www/html/smart-agenda/.htaccess
```

### Problema: Assets não carregam

**No servidor, verifique:**

```bash
ls -la /var/www/html/smart-agenda/
ls -la /var/www/html/smart-agenda/assets/
```

**Deve ter arquivos CSS e JS na pasta assets/**

### Ver logs de erro:

**Ubuntu/Debian:**
```bash
sudo tail -f /var/log/apache2/error.log
```

**CentOS/RHEL:**
```bash
sudo tail -f /var/log/httpd/error_log
```

---

## ✅ CHECKLIST FINAL

- [ ] Build criado no Mac (`npm run build`)
- [ ] Arquivos copiados para o servidor
- [ ] Arquivo `.htaccess` criado
- [ ] Permissões configuradas
- [ ] Módulo rewrite habilitado
- [ ] Apache reiniciado
- [ ] Aplicação acessível no navegador
- [ ] Rotas funcionando

---

## 🎉 PRONTO!

Sua aplicação está publicada! Acesse `http://SEU-IP/smart-agenda/` no navegador.
