Serveur Statique
Middleware qui sert des fichiers statiques ou des fichiers intégrés. Pour l'API détaillée, veuillez consulter la documentation.
Cas d'utilisation
Les serveurs de fichiers statiques ont un large éventail d'applications dans le développement web :
- Servir des ressources statiques pour les sites web, telles que CSS, JavaScript, images, etc.
- Héberger des applications monopages (SPA)
- Distribuer des documents, des fichiers multimédias, des contenus téléchargeables, etc.
- Servir de solution d'hébergement complète pour des sites web simples
Fonctionnalités principales
StaticDirfournit un support pour servir des fichiers statiques à partir de répertoires locaux. Il peut accepter une liste de plusieurs répertoires comme paramètres. Par exemple :
Si un fichier n'est pas trouvé dans le premier répertoire, il sera recherché dans le second répertoire.
StaticDir prend en charge le service de fichiers pré-compressés lorsqu'ils sont disponibles. Par exemple, si des fichiers comme index.html, index.html.gz, index.html.zst et index.html.br existent, alors index.html.gz, index.html.zst et index.html.br sont considérés comme des versions pré-compressées de index.html. Le fichier compressé approprié sera servi en fonction des informations de la requête.
- Fournit un support pour
rust-embed. Par exemple :
Avantages et inconvénients de rust-embed
Avantages :
- Compile les fichiers statiques dans le binaire, simplifiant le déploiement.
- Pas besoin de gérer séparément les fichiers statiques dans les environnements de production.
- Performance potentiellement meilleure (accès mémoire vs I/O disque).
- Sécurité renforcée, car les fichiers ne peuvent pas être modifiés accidentellement.
Inconvénients :
- Augmente la taille du binaire de l'application.
- Mettre à jour le contenu statique nécessite de recompiler et redéployer toute l'application.
- Ne convient pas aux contenus statiques volumineux qui changent fréquemment.
Vous pouvez définir une page par défaut à afficher en utilisant l'option default. Les méthodes with_fallback et fallback vous permettent de spécifier un fichier de secours à servir lorsqu'un fichier demandé n'est pas trouvé, ce qui est utile pour certaines applications de sites web monopages.