【问题标题】:Serve HTML with gorilla mux使用 gorilla mux 提供 HTML
【发布时间】:2023-09-26 22:07:01
【问题描述】:

我有一个需要主页的 golang 应用。我正在努力让它提供一个简单的 html 文件。我可以像这样在本地做到这一点:

router.PathPrefix("/").Handler(http.FileServer(http.Dir("./views/")))

这适用于我在 Windows 和 Pop OS 上,但是,当我将它部署到我在 AWS 上的 ubuntu 服务器时,它显示 404 not found。

【问题讨论】:

  • 你确定你也部署了静态文件(./views 目录),因为你使用相对路径引用它;在 AWS 上运行的二进制文件也运行在 ./views/.. 工作目录中?
  • 您也可以使用os.Getwd 获取当前工作目录并将其分配给常量,然后跨代码重用。

标签: go gorilla mux


【解决方案1】:

在 ubuntu 上使用完整地址,例如 http.dir(/root/workpath/yourgofolder/projectfolder/

【讨论】: