"github.com/spf13/cobra"
        "net/http"
        "strconv"
+       "strings"
 )
 
 var serverPort int
 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
                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)))))
 }