登录
首页 >  Golang >  Go问答

样式表加载失败,显示404错误

来源:stackoverflow

时间:2024-03-03 23:36:25 236浏览 收藏

golang学习网今天将给大家带来《样式表加载失败,显示404错误》,感兴趣的朋友请继续看下去吧!以下内容将会涉及到等等知识点,如果你是正在学习Golang或者已经是大佬级别了,都非常欢迎也希望大家都能给我建议评论哈~希望能帮助到大家!

问题内容

我在使用 go fiber 的静态文件服务器时遇到问题。 我想加载一个在模板中使用的 css 样式表。模板本身运行良好。

func main() {
    // create a new engine.
    engine := html.new("./views", ".html")

    // fiber instance
    app := fiber.new(fiber.config{views: engine})

    app.static("/static", "./views")

    app.get("/layout", func(c *fiber.ctx) error {
        // render index within layouts/main
        return c.render("index", fiber.map{
            "title": "hello, world!",
        }, "layouts/main")
    })

    // start server
    log.print(app.listen(":3000"))

}

我的文件结构是:(其中 -> 表示它是一个目录)

-> views
    -> layouts
        main.css
        main.html
    index.html
main.go

main.html的内容是:




    
    
    

    hello, world!


{{embed}}

文件 ./views 肯定存在,因为当我将其添加到 main 时,没有任何内容打印到日志中:

if _, err := os.Stat("./views"); os.IsNotExist(err) {
    log.Print("Path doesn't exist")
}

当我在本地主机上运行它并使用检查元素查看网络时,可以正确查询http://127.0.0.1:3000/static/layouts/main.css,但会引发 404 错误。如果我访问 http://127.0.0.1:3000/static 我收到一条消息说 cannot get /static。我认为这可能是一个文件路径问题,但我尝试了许多不同的 .s、/s 等组合,但一无所获。

如何解决这个 404 错误?


解决方案


我找到了修复方法。 当我将样式表移动到它们自己的文件夹中时,css 工作得很好。

因此我的文件结构现在是这样的:

-> styles
    main.css
-> views
    -> layouts
        main.html
    index.html
main.go

func main() 中,静态服务器现在是 app.static("/static", "./styles")。其他没有改变。

今天带大家了解了的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>