Követelmények
Telepítse az Eszközöket
Töltse le és telepítse a Golangot
Környezeti változók beállítása
Ellenőrizze a telepítést
Állítsa be a Martinit
Állítsa be az Nginx fordított proxyt
Követelmények
- UNIX alapismeretek.
- FreeBSD x64 telepített Nginx-szel.
Számos olyan programra lesz szüksége, amelyeket nem a FreeBSD-vel együtt szállítunk. Telepítésükhöz futtassa a következő parancsot:
pkg install nano wget git mercurial bzr
Töltse le és telepítse a Golangot
Töltse le a golang programot a következő parancsok futtatásával:
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
Környezeti változók beállítása
Hozzon létre egy változót GOPATH(amely a telepített csomagok helye lesz), és adja hozzá az elérési útjához:
mkdir ~/.gopkg
setenv GOPATH /root/.gopkg
set path = ($path /usr/local/go/bin /root/.gopkg/bin)
Ha be szeretné állítani az elérési utat a rendszerindításkor, akkor futtassa a következő parancsot, hogy hozzáadja azt a következőhöz .cshrc:
echo "setenv GOPATH /root/.gopkg" >> ~/.cshrc
echo "set path = ($path /usr/local/go/bin /root/.gopkg/bin)" >> ~/.cshrc
Ellenőrizze a telepítést
Fuss goa terminálodban. Ha megjelenik a lehetőségek listája, akkor a telepítés sikeres volt. Futtassa a következő parancsot a webes keretrendszer telepítéséhez Martini:
go get github.com/go-martini/martini
Ha nem lát hibát, akkor folytathatja a következő lépéssel.
Állítsa be a Martinit
Hozzon létre egy nevű fájlt, server.goés töltse fel a következő kódsorokkal:
package main
import "github.com/go-martini/martini"
func main() {
m := martini.Classic()
m.Get("/", func() string {
return "Hello from Vultr VPS :)!"
})
m.Run()
}
Ha kész, mentse el és futtassa go run server.go. Ha nem lát hibát a terminálon, akkor továbbléphet a következő lépésre.
Állítsa be az Nginx fordított proxyt
Állítsa be az Nginx-et a proxy visszafordítására a Martini szerver felé. A /usr/local/etc/nginx/nginx.confmegjelenés locationés kicserélni a tartalom az zárójelek az alábbi:
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;
Az egyiket, amelyet hozzáadott, mentse el és futtassa service nginx restartvagy service nginx onerestart, majd futtassa go run server.go. A böngészőben írja be http://0.0.0.0(változtassa meg az IP-t ennek megfelelően), és megjelenik egy oldal, amely ezt írja:
Hello from Vultr VPS :)!
Gratulálunk, sikeresen beállított egy Nginx fordított proxyszervert a Golang + Martini szolgáltatással.