Maison >développement back-end >Golang >Comment diffuser du contenu statique à partir d'une URL racine à l'aide de Gorilla Mux ?

Comment diffuser du contenu statique à partir d'une URL racine à l'aide de Gorilla Mux ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-01 08:36:10456parcourir

How to Serve Static Content from a Root URL Using Gorilla Mux?

Servir du contenu statique à partir d'une URL racine avec Gorilla Mux

Vous souhaitez utiliser le package mux de la boîte à outils Gorilla pour gérer les URL dans un site Web Go. serveur. Cependant, vous rencontrez un problème où les fichiers statiques dans les sous-répertoires ne peuvent pas être servis, ce qui entraîne des 404.

Solution :

La clé pour résoudre ce problème est la fonction PathPrefix fournie. par le paquet mux. Voici comment modifier votre code à l'aide de cette fonction :

func main() {
    r := mux.NewRouter()
    r.HandleFunc("/search/{searchTerm}", Search)
    r.HandleFunc("/load/{dataId}", Load)
    r.PathPrefix("/").Handler(http.FileServer(http.Dir("./static/")))
    http.ListenAndServe(":8100", r)
}

En ajoutant la fonction PathPrefix et en la définissant sur "/", vous faites en sorte que l'URL racine serve les fichiers statiques du répertoire "static". Cela garantit que les sous-répertoires de « static » sont accessibles, y compris les répertoires « js » et « css ».

Lorsque vous accédez à l'URL racine (http://localhost:8100) dans votre navigateur Web, index. html sera livré comme prévu. De plus, les fichiers JS et CSS liés dans index.html seront accessibles, résolvant les erreurs 404 et garantissant que votre page Web se charge complètement.

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