Nginx Reverse Proxy και Golang Setup στο FreeBSD

Απαιτήσεις

  • Βασικές γνώσεις UNIX.
  • FreeBSD x64 με εγκατεστημένο το Nginx.

Εγκατάσταση Εργαλείων

Θα χρειαστείτε πολλά προγράμματα που δεν αποστέλλονται με το FreeBSD. Εκτελέστε την ακόλουθη εντολή για να τα εγκαταστήσετε:

pkg install nano wget git mercurial bzr

Λήψη και εγκατάσταση του Golang

Κατεβάστε το golang εκτελώντας το ακόλουθο σύνολο εντολών:

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

Ρύθμιση μεταβλητών περιβάλλοντος

Δημιουργήστε μια μεταβλητή που ονομάζεται GOPATH(η οποία θα είναι η θέση για τα εγκατεστημένα πακέτα) και προσθέστε τη στη διαδρομή σας:

mkdir ~/.gopkg
setenv GOPATH /root/.gopkg
set path = ($path /usr/local/go/bin /root/.gopkg/bin)

Εάν θέλετε να ορίσετε τη διαδρομή κατά την εκκίνηση, τότε εκτελέστε την ακόλουθη εντολή για να την προσθέσετε στο .cshrc:

echo "setenv GOPATH /root/.gopkg" >> ~/.cshrc
echo "set path = ($path /usr/local/go/bin /root/.gopkg/bin)" >> ~/.cshrc

Επαληθεύστε την εγκατάσταση

Εκτελέστε goστο τερματικό σας. Εάν εμφανιστεί μια λίστα επιλογών, τότε η εγκατάσταση ήταν επιτυχής. Εκτελέστε την ακόλουθη εντολή για να εγκαταστήσετε ένα πλαίσιο web που ονομάζεται Martini:

go get github.com/go-martini/martini

Εάν δεν βλέπετε σφάλματα, μπορείτε να προχωρήσετε στο επόμενο βήμα.

Ρύθμιση Martini

Δημιουργήστε ένα αρχείο που ονομάζεται server.goκαι συμπληρώστε το με τις ακόλουθες γραμμές κώδικα:

package main

import "github.com/go-martini/martini"

func main() {
  m := martini.Classic()
  m.Get("/", func() string {
    return "Hello from Vultr VPS :)!"
  })
  m.Run()
}

Όταν τελειώσετε, αποθηκεύστε και εκτελέστε go run server.go. Με την προϋπόθεση ότι δεν βλέπετε σφάλματα στο τερματικό σας, μπορείτε να προχωρήσετε στο επόμενο βήμα.

Ρύθμιση του Nginx Reverse Proxy

Διαμορφώστε το Nginx για να αντιστρέψει το διακομιστή μεσολάβησης στον διακομιστή Martini. Στην /usr/local/etc/nginx/nginx.confεμφάνιση για locationκαι να αντικαταστήσει το περιεχόμενό της μέσα στις αγκύλες με τα ακόλουθα:

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;

Ένα που έχετε προσθέσει, αποθηκεύστε και εκτελέστε service nginx restartή service nginx onerestart, στη συνέχεια εκτελέστε go run server.go. Στο πρόγραμμα περιήγησής σας, εισάγετε http://0.0.0.0(αλλάξτε την IP ανάλογα) και θα δείτε μια σελίδα που λέει:

Hello from Vultr VPS :)!

Συγχαρητήρια, ρυθμίσατε με επιτυχία έναν διακομιστή μεσολάβησης αντίστροφου Nginx με το Golang + Martini.

Αφήστε ένα σχόλιο

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Η Τεχνητή Νοημοσύνη δεν είναι στο μέλλον, είναι εδώ ακριβώς στο παρόν Σε αυτό το blog Διαβάστε πώς οι εφαρμογές Τεχνητής Νοημοσύνης έχουν επηρεάσει διάφορους τομείς.

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Είστε επίσης θύμα των επιθέσεων DDOS και έχετε μπερδευτεί σχετικά με τις μεθόδους πρόληψης; Διαβάστε αυτό το άρθρο για να λύσετε τις απορίες σας.

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Μπορεί να έχετε ακούσει ότι οι χάκερ κερδίζουν πολλά χρήματα, αλλά έχετε αναρωτηθεί ποτέ πώς κερδίζουν τέτοια χρήματα; ας συζητήσουμε.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Θέλετε να δείτε επαναστατικές εφευρέσεις της Google και πώς αυτές οι εφευρέσεις άλλαξαν τη ζωή κάθε ανθρώπου σήμερα; Στη συνέχεια, διαβάστε στο blog για να δείτε τις εφευρέσεις της Google.

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Η ιδέα των αυτοκινούμενων αυτοκινήτων να βγαίνουν στους δρόμους με τη βοήθεια της τεχνητής νοημοσύνης είναι ένα όνειρο που έχουμε εδώ και καιρό. Όμως, παρά τις πολλές υποσχέσεις, δεν φαίνονται πουθενά. Διαβάστε αυτό το blog για να μάθετε περισσότερα…

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Καθώς η Επιστήμη εξελίσσεται με γρήγορους ρυθμούς, αναλαμβάνοντας πολλές από τις προσπάθειές μας, αυξάνονται και οι κίνδυνοι να υποβάλλουμε τον εαυτό μας σε μια ανεξήγητη Ιδιότητα. Διαβάστε τι σημαίνει η μοναδικότητα για εμάς.

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Διαβάστε το ιστολόγιο για να μάθετε διαφορετικά επίπεδα στην Αρχιτεκτονική Μεγάλων Δεδομένων και τις λειτουργίες τους με τον απλούστερο τρόπο.

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Οι μέθοδοι αποθήκευσης των δεδομένων εξελίσσονται μπορεί να είναι από τη γέννηση των Δεδομένων. Αυτό το ιστολόγιο καλύπτει την εξέλιξη της αποθήκευσης δεδομένων με βάση ένα infographic.

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

Σε αυτόν τον ψηφιακό κόσμο, οι έξυπνες οικιακές συσκευές έχουν γίνει κρίσιμο μέρος της ζωής. Ακολουθούν μερικά εκπληκτικά οφέλη των έξυπνων οικιακών συσκευών σχετικά με το πώς κάνουν τη ζωή μας να αξίζει και να απλοποιείται.

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Πρόσφατα, η Apple κυκλοφόρησε το macOS Catalina 10.15.4 μια συμπληρωματική ενημέρωση για την επιδιόρθωση προβλημάτων, αλλά φαίνεται ότι η ενημέρωση προκαλεί περισσότερα προβλήματα που οδηγούν σε bricking των μηχανών mac. Διαβάστε αυτό το άρθρο για να μάθετε περισσότερα