Server Statico
Middleware che serve file statici o file incorporati. Per l'API dettagliata, consultare la documentazione.
Casi d'Uso
I server di file statici trovano ampia applicazione nello sviluppo web:
- Servire risorse statiche per siti web, come CSS, JavaScript, immagini, ecc.
- Ospitare Applicazioni a Pagina Singola (SPA)
- Distribuire documenti, file multimediali, contenuti scaricabili, ecc.
- Fungere da soluzione di hosting completa per siti web semplici
Caratteristiche Principali
StaticDirfornisce supporto per servire file statici da directory locali. Può accettare una lista di più directory come parametri. Ad esempio:
Se un file non viene trovato nella prima directory, verrà cercato nella seconda.
StaticDir supporta la distribuzione di file precompressi quando disponibili. Ad esempio, se esistono file come index.html, index.html.gz, index.html.zst e index.html.br, allora index.html.gz, index.html.zst e index.html.br sono considerati versioni precompresse di index.html. Il file compresso appropriato verrà servito in base alle informazioni della richiesta.
- Fornisce supporto per
rust-embed. Ad esempio:
Vantaggi e Svantaggi di rust-embed
Vantaggi:
- Compila i file statici nel binario, semplificando il deployment.
- Non è necessario gestire separatamente i file statici negli ambienti di produzione.
- Potenzialmente migliori prestazioni (accesso in memoria vs. I/O del disco).
- Maggiore sicurezza, poiché i file non possono essere modificati accidentalmente.
Svantaggi:
- Aumenta la dimensione del binario dell'applicazione.
- L'aggiornamento dei contenuti statici richiede la ricompilazione e il ridistribuzione dell'intera applicazione.
- Non adatto per contenuti statici di grandi dimensioni che cambiano frequentemente.
È possibile impostare una pagina predefinita da visualizzare utilizzando l'opzione default. I metodi with_fallback e fallback consentono di specificare un file di riserva da servire quando un file richiesto non viene trovato, utile per alcune applicazioni web a pagina singola.