From 1abc2f0b8663a3082c509157952bb756bcd38f92 Mon Sep 17 00:00:00 2001 From: Matt Way Date: Fri, 22 Nov 2013 00:28:05 -0500 Subject: [PATCH] properly use non-localhost BaseUrl in server command --- commands/server.go | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/commands/server.go b/commands/server.go index a93311759..73f23609a 100644 --- a/commands/server.go +++ b/commands/server.go @@ -18,6 +18,7 @@ import ( "github.com/spf13/cobra" "net/http" "strconv" + "strings" ) var serverPort int @@ -40,11 +41,16 @@ Serve them up.`, func server(cmd *cobra.Command, args []string) { InitializeConfig() - // Unless command line overrides, we use localhost for the server if BaseUrl == "" { - Config.BaseUrl = "http://localhost:" + strconv.Itoa(serverPort) + BaseUrl = "http://localhost" } + if !strings.HasPrefix(BaseUrl, "http://") { + BaseUrl = "http://" + BaseUrl + } + + Config.BaseUrl = strings.TrimSuffix(BaseUrl, "/") + ":" + strconv.Itoa(serverPort) + build(serverWatch) // Watch runs its own server as part of the routine @@ -64,7 +70,7 @@ func serve(port int) { fmt.Println("Serving pages from " + Config.GetAbsPath(Config.PublishDir)) } - fmt.Printf("Web Server is available at http://localhost:%v\n", port) + fmt.Printf("Web server is available at %s\n", Config.BaseUrl) fmt.Println("Press ctrl+c to stop") panic(http.ListenAndServe(":"+strconv.Itoa(port), http.FileServer(http.Dir(Config.GetAbsPath(Config.PublishDir))))) }