html 页面无法从 Go 网络服务器找到资产

html page can't find asset from Go web server

我有一个 Go HTTP 网络服务器,我正在加载静态资产,如下所示:

http.Handle("/assets/", http.StripPrefix("/assets/", http.FileServer(http.Dir("assets/"))))

目录 assets 存在于 Web 服务器 运行 的目录中,图像文件 assets/images/logo.svg 存在。

如果我尝试转到 http://localhost/assets/images/logo.svg,它会重定向到 http://localhost/

从 HTML 页面我有以下内容:

<img src="assets/images/logo.svg">

加载图片失败。

然后我也尝试了以下方法,但没有成功:

<img src="./assets/images/logo.svg">
<img src="//localhost/assets/images/logo.svg">

不确定我在托管静态文件并能够从 html.

中使用它们时做错了什么

编辑

我已经添加了所有内容的代码 here。 连同显示损坏图像的照片。

尝试修改以下行:

http.Handle(
    "/assets/",
    http.StripPrefix(
        "/assets/", 
        http.FileServer(http.Dir("assets/")),
    ),
)

http.Handle(
    "/assets/", 
    http.StripPrefix(
        "/assets/", 
        http.FileServer(http.Dir("./assets/")),
    ),
)

请注意,您的 img->src 应该是这样的 assets/images/logo.svg

已编辑: 下图是对评论 的回复: