Есть простенький web server, который должен рендерить страницу по шаблону html
Его код
package main
import (
"fmt"
"net/http"
)
type msg string
func (m msg) ServeHTTP(resp http.ResponseWriter, req *http.Request) {
fmt.Fprint(resp, m)
}
func main() {
fs := http.FileServer(http.Dir("static"))
http.Handle("/", fs)
http.HandleFunc("/index", func(w http.ResponseWriter, r *http.Request) {
http.ServeFile(w, r, "static/template/index.html")
})
fmt.Println("Server is started")
http.ListenAndServe("localhost:8081", nil)
}
Ну и собственно сам шаблончик
<!DOCTYPE html>
<head>
<title>welcome</title>
<script src="/js/bootstrap.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/css/bootstrap.min.css">
</head>
<body>
<div>
<div class="row">
<div class="col">1 of 4</div>
<div class="col"><img src="/static/images/one.png" alt="img"></div>
</div>
<div class="row">
<div class="col">3 of 4</div>
<div class="col">4 of 4</div>
</div>
</div>
</body>
<footer>
<p>this is the end</p>
</footer>
В отдельной папке static лежит файл типа .png
В браузере после запуска сервера вижу вот такое
GET
localhost:8081/static/images/one.png 404 (Not Found)
При этом если я открываю шаблон из файловой системы то все отлично показывает.
Что я делаю не так?