Requisits
Instal·lar eines
Baixeu i instal·leu Golang
Configuració de les variables d'entorn
Verifiqueu la instal·lació
Configura Martini
Configura el servidor intermediari invers Nginx
Requisits
- Coneixements bàsics d'UNIX.
- FreeBSD x64 amb Nginx instal·lat.
Necessitareu diversos programes que no s'enviïn amb FreeBSD. Executeu l'ordre següent per instal·lar-los:
pkg install nano wget git mercurial bzr
Baixeu i instal·leu Golang
Baixeu golang executant el següent conjunt d'ordres:
cd /tmp
wget https://storage.googleapis.com/golang/go1.3.3.freebsd-amd64.tar.gz
tar -C /usr/local -xzf go1.3.3.freebsd-amd64.tar.gz
Configuració de les variables d'entorn
Creeu una variable anomenada GOPATH(que serà la ubicació dels paquets instal·lats) i afegiu-la al vostre camí:
mkdir ~/.gopkg
setenv GOPATH /root/.gopkg
set path = ($path /usr/local/go/bin /root/.gopkg/bin)
Si voleu establir el camí a l'arrencada, executeu l'ordre següent per afegir-lo al vostre .cshrc:
echo "setenv GOPATH /root/.gopkg" >> ~/.cshrc
echo "set path = ($path /usr/local/go/bin /root/.gopkg/bin)" >> ~/.cshrc
Verifiqueu la instal·lació
Executeu goal vostre terminal. Si se us presenta una llista d'opcions, la instal·lació ha estat correcta. Executeu l'ordre següent per instal·lar un marc web anomenat Martini:
go get github.com/go-martini/martini
Si no veieu cap error, podeu continuar amb el pas següent.
Configura Martini
Creeu un fitxer anomenat server.goi ompliu-lo amb les següents línies de codi:
package main
import "github.com/go-martini/martini"
func main() {
m := martini.Classic()
m.Get("/", func() string {
return "Hello from Vultr VPS :)!"
})
m.Run()
}
Quan hagis acabat, desa i executa go run server.go. Sempre que no veieu cap error al vostre terminal, podeu procedir al pas següent.
Configura el servidor intermediari invers Nginx
Configureu Nginx per invertir el servidor intermediari al servidor Martini. En /usr/local/etc/nginx/nginx.conflook per locationi reemplaçar el seu contingut dins dels claudàtors amb el següent:
expires 8d;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_read_timeout 5m;
proxy_connect_timeout 5m;
proxy_cache_key sfs$request_uri$scheme;
proxy_pass http://127.0.0.1:3000;
proxy_redirect off;
Un que hàgiu afegit, deseu i executeu service nginx restarto service nginx onerestart, després executeu go run server.go. Al vostre navegador, introduïu http://0.0.0.0(canvieu la IP en conseqüència) i veureu una pàgina que diu:
Hello from Vultr VPS :)!
Enhorabona, heu configurat correctament un servidor intermediari invers Nginx amb Golang + Martini.