1) # aptitude install golang-go устанавливаем go
2) $ go env - смотрим переменные окружерния; $ go version - интересуемся версией
3) $ export GOPATH=/home/dad/go - установим домашний каталог, внутри которого будут папки src и bin
4) В папке src создаем папку hello, куда положим исходник нашего хелловорда tru-la-la.go
5) В tru-la-la.go кладем гениальный код:
package main;
import (
"net/http"
"fmt"
)
func requestHandler(w http.ResponseWriter, r *http.Request) {
cookie := &http.Cookie{Name: "go-dad", Value: "yes_it_works", HttpOnly: false}
http.SetCookie(w, cookie)
w.Header().Set("Server", "SuperFast")
fmt.Fprintf(w,`<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Компания Дебиан и коты.</title>
<meta name="description" content="CMS на быстрых протонах">
</head>
<body>
<h1 style="color:green">Golang рулит8!</h1>
</body>
<html>`)
}
func main(){
http.HandleFunc("/", requestHandler)
http.ListenAndServe(":8080", nil)
}
Обратные слэши гораздо удобнее php-шных хередоков.
6) $ go install hello
7) В папке /home/dad/go/bin ($GOPATH/bin) находим наш суперсервер hello, запускаем его
8) http://localhost:8080/ - набираем в строке браузера и любуемся нашим выводом,
заголовки на месте, код отформатирован:
Content-Length:292
Content-Type:text/html; charset=utf-8
Date:Wed, 04 Oct 2017 22:53:00 GMT
Server:SuperFast
Set-Cookie:go-dad=yes_it_works