Maison >développement back-end >Golang >Comment spécifier le répertoire racine des fichiers statiques d'un serveur Web Go ?

Comment spécifier le répertoire racine des fichiers statiques d'un serveur Web Go ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-17 05:43:26377parcourir

How Do I Specify the Root Directory for a Go Web Server's Static Files?

Où puis-je trouver le répertoire racine d'un serveur Web Go ?

Le package Go net/http fournit un serveur Web mais n'a pas de concept de racine de système de fichiers. Il utilise des gestionnaires qui mappent les requêtes HTTP aux URL.

Static File Serving

Cependant, un serveur de fichiers statique est disponible via la fonction FileServer() du package http. Cette fonction prend un paramètre de répertoire racine, qui peut être absolu ou relatif au répertoire de travail actuel (le dossier dans lequel vous exécutez votre application).

Exemple (chemin absolu) :

http.Handle("/", http.FileServer(http.Dir("/tmp")))

Ceci gère toutes les requêtes adressées à l'URL racine ("/") et sert les fichiers à partir du "/ tmp".

Exemple (Relative Chemin) :

http.Handle("/", http.FileServer(http.Dir("./myfiles")))

Ici, les fichiers sont servis à partir du répertoire "./myfiles" par rapport au fichier de travail actuel. directory.

Suppression des préfixes pour un mappage complexe :

Vous pouvez utiliser la fonction StripPrefix() pour un routage plus avancé. . Par exemple :

http.Handle("/tmpfiles/",</p>
<pre class="brush:php;toolbar:false">http.StripPrefix("/tmpfiles/", http.FileServer(http.Dir("/tmp"))))

 Cela sert les fichiers de "/tmp" mais sous l'URL "/tmpfiles/".

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn