Предполагая, что имеем:
http.HandleFunc("/smth", smthPage)
http.HandleFunc("/", homePage)
Пользователь видит, что "404 страница не найдена", когда они используют неправильный URL-адрес. Как я могу вернуть пользовательскую страницу для этого случая?
Обновление относительно gorilla/mux
Принятый ответ подходит для тех, кто использует чистый сетевой/http-пакет.
Если вы используете gorilla/mux, вы должны использовать что-то вроде этого:
func main() {
r := mux.NewRouter()
r.NotFoundHandler = http.HandlerFunc(notFound)
}
И реализуйте func notFound(w http.ResponseWriter, r *http.Request)
, как вы хотите.