Den Dateisystemstamm im Go-Webserver verstehen
Bei der Nutzung des Net/http-Pakets von Go für die Webserverfunktionalität stellt sich eine wichtige Frage: Wo Ist das Stammverzeichnis der Website dem Dateisystem zugeordnet?
Im Gegensatz zu einigen statischen Dateiservern verwendet das Paket „net/http“ Handler dazu Verwalten Sie HTTP-Anfragen. Ein Handler verarbeitet Anfragen und generiert Antworten, ohne ein bestimmtes „Stamm“-Verzeichnis.
Für die statische Dateibereitstellung bietet jedoch die Funktion FileServer() eine Lösung. Durch die Angabe eines absoluten Pfades wird das Root-Verzeichnis explizit festgelegt. Wenn ein relativer Pfad verwendet wird, bezieht er sich auf das aktuelle Arbeitsverzeichnis (normalerweise dort, wo die Anwendung ausgeführt wird).
Betrachten Sie beispielsweise die folgende Konfiguration:
http.Handle("/", http.FileServer(http.Dir("/tmp")))
Dies ordnet die URL zu root „/“ in das Verzeichnis „/tmp“ im Dateisystem. Folglich würde eine Anfrage nach „/mydoc.txt“ die Datei „/tmp/mydoc.txt“ abrufen.
Eine detailliertere Anpassung kann mit der Funktion StripPrefix() erreicht werden. Um beispielsweise „/tmp“ unter der URL „/tmpfiles/“ bereitzustellen, würde die folgende Konfiguration ausreichen:
http.Handle("/tmpfiles/", http.StripPrefix("/tmpfiles/", http.FileServer(http.Dir("/tmp"))))
Durch die Nutzung von Handlern und das Verständnis der Stammverzeichniszuordnung innerhalb des FileServer() können Entwickler dies tun Stellen Sie statische Dateien mithilfe des Webserver-Frameworks von Go effektiv bereit.
Das obige ist der detaillierte Inhalt vonWo ordnet der „net/http'-Webserver von Go den Website-Root dem Dateisystem zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!