napi/nginx/README.md

52 lines
1.4 KiB
Markdown

# 🌐 Configuraciones Nginx — napi
Copia de referencia de los server blocks desplegados en **zzz** (`qu3v3d0.tech`).
---
## 📋 Sites activos
| Fichero | server_name | Root | Grupo |
|:--------|:------------|:-----|:------|
| **`napi-ddaw2.conf`** | `notas.qu3v3d0.tech` | `/var/www/napi` | DDAW2 (19 alumnos) |
| **`napi2-asir1.conf`** | `asir1.qu3v3d0.tech` | `/var/www/napi2` | ASIR1 Programación (21 alumnos) |
---
## 🔑 Funcionamiento común
Ambos sites comparten la misma arquitectura:
1. **Auth PAM** (`libnginx-mod-http-auth-pam`) — credenciales SFTP del alumno
2. **`$remote_user`** — Nginx usa el usuario autenticado para servir su `notas.md`
3. **`viewer.html`** — App estática que hace `fetch('/notas.md')` y renderiza con `marked.js` + `twemoji`
4. **SSL wildcard**`*.qu3v3d0.tech` (certificado en `/etc/ssl/certs/qu3v3d0.tech.crt`)
```
Alumno → https://asir1.qu3v3d0.tech → Auth PAM → viewer.html
→ fetch('/notas.md') → Nginx alias → /var/www/napi2/data/$remote_user/notas.md
→ marked.js renderiza → alumno ve su feedback
```
---
## 🛠️ Gestión en zzz
```bash
# Ver configs activos
ls -la /etc/nginx/sites-enabled/
# Editar
sudo nano /etc/nginx/sites-available/napi2
# Test + reload
sudo nginx -t && sudo systemctl reload nginx
```
---
## 📅 DNS
DNS wildcard `*.qu3v3d0.tech``161.22.44.104` (zzz).
No hay que tocar DNS para añadir nuevos subdominios.