docs: aggiorna README con stato attuale del progetto

- struttura aggiornata con cartella docs/
- deploy: comando PowerShell e rimando a INFRA.md
- form contatti: rimossa nota "da creare", aggiunta info validazioni
- TODO: rimossi item completati, aggiunto hCaptcha

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-21 13:53:15 +02:00
parent 4663207619
commit 3824083190

View File

@@ -8,6 +8,8 @@ Stack: **Astro 4** (static output) · CSS custom · Deploy su **IIS 10 / Windows
``` ```
/ /
├── docs/
│ └── INFRA.md ← documentazione infrastruttura IIS e deploy
├── public/ ├── public/
│ ├── assets/ ← immagini, loghi (copiati as-is nel build) │ ├── assets/ ← immagini, loghi (copiati as-is nel build)
│ └── web.config ← configurazione IIS (copiata as-is nel build) │ └── web.config ← configurazione IIS (copiata as-is nel build)
@@ -19,8 +21,8 @@ Stack: **Astro 4** (static output) · CSS custom · Deploy su **IIS 10 / Windows
│ ├── pages/ │ ├── pages/
│ │ ├── index.astro ← Home / Landing page │ │ ├── index.astro ← Home / Landing page
│ │ ├── contatti.astro ← Form contatti → WebAPI │ │ ├── contatti.astro ← Form contatti → WebAPI
│ │ ├── privacy.astro ← Privacy Policy (da completare) │ │ ├── privacy.astro ← Privacy Policy
│ │ └── termini.astro ← Termini (da completare) │ │ └── termini.astro ← Termini e condizioni
│ └── styles/ │ └── styles/
│ └── global.css ← CSS variables, nav, footer, form, responsive │ └── global.css ← CSS variables, nav, footer, form, responsive
├── astro.config.mjs ├── astro.config.mjs
@@ -44,16 +46,18 @@ npm run build # genera cartella /dist pronta per il deploy
## Deploy su IIS 10 ## Deploy su IIS 10
1. Eseguire il build: `npm run build` ```powershell
2. La cartella `/dist` contiene il sito statico completo npm run build
3. Copiare il contenuto di `/dist` nella cartella del sito su IIS Copy-Item -Path "dist\*" -Destination "C:\inetpub\wwwroot\smartroots-site\" -Recurse -Force
- Il `web.config` è già incluso nel build (sta in `/public`) ```
4. In IIS Manager:
- Application Pool: **.NET CLR version = No Managed Code**
- Assicurarsi che il modulo **URL Rewrite** sia installato (necessario per il routing)
### Modulo URL Rewrite Il `web.config` viene copiato automaticamente da Astro durante la build.
Se non installato: scaricarlo da https://www.iis.net/downloads/microsoft/url-rewrite
Per la configurazione IIS completa (Virtual Applications, Virtual Directories, note critiche sul `web.config`) vedere **[docs/INFRA.md](docs/INFRA.md)**.
### Prerequisiti IIS
- Application Pool: **.NET CLR version = No Managed Code**
- Modulo **URL Rewrite** installato (https://www.iis.net/downloads/microsoft/url-rewrite)
--- ---
@@ -72,9 +76,9 @@ Payload inviato:
} }
``` ```
### Endpoint WebAPI da creare (.NET Framework 4.8) Controller: `SmartRootsServices/SRServices/Controllers/SmartRootsSite/ContattiController.cs`
Vedere documentazione separata per `ContattiController`. CORS abilitato per `https://www.smart-roots.net`. Validazione lato server: campi obbligatori,
Ricordarsi di abilitare CORS per `https://www.smart-roots.net` nella WebAPI. lunghezza minima messaggio (10 caratteri), rate limiting (3 invii/ora per IP), honeypot anti-bot.
--- ---
@@ -90,7 +94,4 @@ Ricordarsi di abilitare CORS per `https://www.smart-roots.net` nella WebAPI.
- [ ] Aggiungere immagine `hero-dashboard.png` in `/public/assets/` - [ ] Aggiungere immagine `hero-dashboard.png` in `/public/assets/`
- [ ] Aggiungere immagine `og-image.jpg` in `/public/assets/` (1200×630px) - [ ] Aggiungere immagine `og-image.jpg` in `/public/assets/` (1200×630px)
- [ ] Completare testo Privacy Policy in `src/pages/privacy.astro` - [ ] Integrare hCaptcha nel form contatti (frontend + verifica backend)
- [ ] Completare testo Termini in `src/pages/termini.astro`
- [ ] Creare endpoint `POST /api/contatti` nella WebAPI
- [ ] Abilitare CORS per `https://www.smart-roots.net` nella WebAPI