post image :date_long | 3 min Read

Go StripPrefix() cumbersome one hands on 9

package main

import (
	"html/template"
	"log"
	"net/http"
)

var tpl *template.Template

func init() {
	tpl = template.Must(template.ParseFiles("hands-on-09/templates/index.gohtml"))
}

func main() {

	http.HandleFunc("/", photos)
	http.Handle("/public/", http.StripPrefix("/public", http.FileServer(http.Dir("hands-on-09/public"))))
	// http.Handle("/resources/", http.StripPrefix("/resources", http.FileServer(http.Dir("starting-files/public"))))
	log.Fatalln(http.ListenAndServe(":8080", nil))

}

func photos(w http.ResponseWriter, r *http.Request) {
	tpl.Execute(w, nil)
}

// hands-on-09
// ├── public
// │   ├── css
// │   │   ├── main.css
// │   │   └── reset.css
// │   └── pic
// │       └── surf.jpg
// └── templates
//     └── index.gohtml

// 4 directories, 4 files

// cat  hands-on-09/templates/index.gohtml
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <link rel="stylesheet" href="public/css/reset.css">
    <link rel="stylesheet" href="public/css/main.css">
</head>
<body>

<img src="public/pic/surf.jpg" alt="A man surfing a wave">

<!-- emmet notation -->
 <!--(h1#element${Header $$$}+p*3>lorem)*4-->
<h1 id="element1">Header 001</h1>

<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Accusamus beatae enim inventore ratione tempora! Asperiores
    deleniti, deserunt dolorem ducimus ex impedit maiores, minima minus quam quos rerum similique veritatis,
    voluptate.</p>

<p>Aperiam corporis cupiditate deserunt dicta expedita fuga ipsum necessitatibus numquam quaerat quam sapiente, soluta
    ut velit. Autem dolore dolores eos impedit iure laudantium magnam magni, numquam officia rerum, unde voluptas?</p>

<p>A ab aliquam dolore impedit quos! Assumenda eos facilis impedit, iste libero maxime, necessitatibus, officia
    perspiciatis quod saepe tenetur veritatis? Commodi deserunt fuga hic iure obcaecati, optio perspiciatis sapiente
    suscipit?</p>

<h1 id="element2">Header 002</h1>

<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Accusantium ad atque beatae deleniti dignissimos dolor
    exercitationem facilis magni modi molestiae nisi, officiis quisquam recusandae soluta voluptatum! Aliquid cumque
    iusto similique.</p>

<p>Doloremque ex nihil nulla officia repellat, totam. Atque blanditiis culpa dolores in magni, modi rerum similique sunt
    ullam! Aliquam dolorem excepturi iure minus neque nobis odio officia totam vel voluptas.</p>

<p>Accusantium at atque commodi deleniti dignissimos ea eaque eius fuga fugit id illum non porro quaerat quas quod
    recusandae, rerum sequi vitae? A culpa dolor necessitatibus tempora. Atque, deleniti, quod.</p>

<h1 id="element3">Header 003</h1>

<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Corporis enim facere fuga illo ipsam nam nesciunt quo,
    ratione repudiandae sunt velit voluptatibus! Accusantium animi error, impedit minima nihil quibusdam temporibus.</p>

<p>Ab blanditiis consectetur, consequuntur distinctio ducimus id ipsum minus necessitatibus neque perspiciatis quas
    repellendus saepe sit soluta suscipit! Accusantium architecto asperiores, dicta eligendi et facilis magnam optio
    quaerat reprehenderit sit.</p>

<p>Cupiditate, quis, quo! Culpa, doloremque doloribus, esse illo molestiae non numquam omnis quia quidem repellat
    sapiente sunt vitae voluptatum. Aperiam, asperiores ex modi perferendis quasi quisquam repellat reprehenderit
    temporibus veniam.</p>

<h1 id="element4">Header 004</h1>

<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ab alias asperiores consequatur deleniti dolor doloribus
    ducimus esse fugiat hic incidunt libero magni molestiae, mollitia odit rem sapiente suscipit ullam veniam!</p>

<p>Asperiores atque earum eligendi facilis, impedit officia quia voluptates. Architecto eum illum maxime minus molestias
    non possimus rerum unde. Aspernatur corporis dignissimos ea excepturi ipsa quae sint soluta tempora voluptates.</p>

<p>Aliquid amet animi aperiam earum eligendi expedita harum id iste magni minima nulla quaerat quibusdam recusandae,
    tempore, totam voluptate voluptatibus. Ab asperiores debitis fugiat impedit nam nemo officiis, quasi vel?</p>

</body>
</html>%
author image

Jan Toth

I have been in DevOps related jobs for past 6 years dealing mainly with Kubernetes in AWS and on-premise as well. I spent quite a lot …

comments powered by Disqus