Διαμόρφωση του OpenBSD
Εγκαταστήστε και διαμορφώστε το Ghost
Το Ghost είναι το πιο πρόσφατο και καλύτερο ξεκίνημα σε ανταγωνιστικό WordPress. Η ανάπτυξη θεμάτων είναι γρήγορη και εύκολη στην εκμάθηση, επειδή οι προγραμματιστές Ghost αποφάσισαν να χρησιμοποιήσουν και τα πλαίσια ember.js και handlebars.js για να αφαιρέσουν μέρος της καμπύλης εκμάθησης. Ο χρόνος εγκατάστασης και εγκατάστασης πρέπει να διαρκέσει περίπου 45-60 λεπτά και χρησιμοποιεί τις ακόλουθες τεχνολογίες: Node.js, Relayd, και Httpd.
Σημείωση: Αντικαταστήστε το example.org με το όνομα τομέα σας και το 192.0.2.x με την εκχωρημένη διεύθυνση IP του Vultr. Θα χρησιμοποιήσουμε επίσης αυτο-υπογεγραμμένα πιστοποιητικά που είναι πραγματικά καλά μόνο για δοκιμές. Εάν αποφασίσετε να χρησιμοποιήσετε το Ghost στην παραγωγή, είναι εξαιρετικά σημαντικό να χρησιμοποιείτε ένα πραγματικό πιστοποιητικό. Μπορείτε να αποκτήσετε πραγματικά πιστοποιητικά δωρεάν χρησιμοποιώντας το Let's Encrypt .
Διαμόρφωση του OpenBSD
Ενεργοποίηση Httpdκαι relayd.
# rcctl enable httpd relayd
Δημιουργήστε το /etc/httpd.confαρχείο διαμόρφωσης για το Httpd. Σε αυτό το παράδειγμα, ο μόνος σκοπός του Httpd είναι να ανακατευθύνει αιτήματα στο https. Το Relayd θα είναι στην πραγματικότητα αυτό που ακούει στη httpsθύρα και θα υποβάλλει αιτήματα μεσολάβησης στο Ghost.
prefork 3
types { include "/usr/share/misc/mime.types" }
server "www.example.org" {
listen on 192.0.2.1 port 80
# Redirect to https
block return 301 "https://$SERVER_NAME:$REQUEST_URI"
}
Δημιουργήστε τα δοκιμαστικά πιστοποιητικά SSL για την ανάπτυξη Ghost. Δεδομένου ότι αυτό θα είναι πραγματικά μόνο για δοκιμή, μπορείτε να αφήσετε τα περισσότερα πεδία κενά. Το μόνο που θα χρειαστεί να συμπληρώσετε είναι το Common Nameπεδίο και θα πρέπει να ταιριάζει με το πλήρως αναγνωρισμένο όνομα τομέα του διακομιστή. Όταν είστε έτοιμοι να αντικαταστήσετε το αυτο-υπογεγραμμένο πιστοποιητικό με αυτά που είναι αληθινά και έγκυρα, απλώς θυμηθείτε να διατηρήσετε τα ονόματα των αρχείων ίδια. Η Relayd αναμένει να βρει το κλειδί και το πιστοποιητικό της με τη σύμβαση ονομασίας <ip address>.crtκαι <ip address>.key.
# cd /etc/ssl
# openssl req -x509 -new -nodes -newkey rsa:4096 -keyout private/192.0.2.1.key -out 192.0.2.1.crt -days 364 -sha256
# chmod 0400 private/192.0.2.1.key
Δημιουργήστε το /etc/relayd.confαρχείο ρυθμίσεων για το Relayd. Το Relayd κάνει τη μαγεία που κάνει proxy και ανακατευθύνει αιτήματα στο Ghost.
prefork 3
http protocol https {
match request header append "X-Forwarded-For" value "$REMOTE_ADDR"
match request header append "X-Forwarded-By" \
value "$SERVER_ADDR:$SERVER_PORT"
tcp { nodelay, sack, socket buffer 65536, backlog 128 }
tls { no tlsv1, ciphers HIGH }
tls no session tickets
}
relay ghost {
listen on 192.0.2.1 port 443 tls
protocol https
forward to 127.0.0.1 port 2368
}
Προσθέστε τα παρακάτω πακέτα.
pkg_add -r node unzip wget
Δημιουργήστε έναν κατάλογο χρήστη και οικίας για την εγκατάσταση του Ghost. Για παράδειγμα, δημιουργήστε έναν χρήστη ghostμε όνομα με έναν αρχικό κατάλογο που ονομάζεται /var/www/ghost. Χρησιμοποιήστε έναν πολύ ισχυρό κωδικό πρόσβασης για αυτόν τον λογαριασμό.
# user add -m -c "Ghost User" -d /var/www/ghost -G wheel -g =uid -u 5000 -s /bin/ksh ghost
# passwd ghost
Αλλαγή ghostχρήστη και λήψη της πιο πρόσφατης έκδοσης του Ghost.
# doas su ghost
# cd /var/www/ghost
# mkdir blog
# cd blog/
# wget https://ghost.org/zip/ghost-latest.zip
# unzip ghost-latest.zip
Εγκαταστήστε το Ghost.
# npm install sqlite3 --sqlite=/usr/local
# npm install --production
# npm install forever
# doas npm install -g knex-migrator
Διαμόρφωση Ghost. Αντικαταστήστε την databaseενότητα config.production.jsonμε την databaseπαρακάτω ρήτρα εάν θέλετε να χρησιμοποιήσετε sqliteαντί για mysql. Το Sqlite θα χειριστεί εύκολα περίπου 100.000 συνδέσεις την ημέρα. Εάν έχετε ήδη εγκαταστήσει τη MySQL, μπορείτε πάντα να επιλέξετε να τη χρησιμοποιήσετε. Για το defaults.jsonαρχείο, αλλάξτε το domainτμήμα του urlστον τομέα σας.
# cd core/server/config/env/config/
# vi config.production.json
"database": {
"client": "sqlite3",
"connection": {
"filename": "content/data/ghost.db"
},
# cd core/server/config/
# vi defaults.json
"url": "http://www,example.org",
"server": {
"host": "127.0.0.1",
"port": 2368
},
Τώρα πρέπει να συμπληρώσουμε τη βάση δεδομένων και να ξεκινήσουμε το Ghost.
# cd ~/blog
# NODE_ENV=production knex-migrator init
# NODE_ENV=production ~/blog/node_modules/forever/bin/forever start ~/blog/index.js
Εκτελέστε ένα netstat -na -f inetκαι αναζητήστε μια 127.0.0.1:2368καταχώρηση. Μπορείτε επίσης να κάνετε ένα ps ax | grep nodeγια να επαληθεύσετε ότι το Ghost εκτελείται.
Ανοίξτε το αγαπημένο σας πρόγραμμα περιήγησης και περιηγηθείτε στο http://www.example.org. Θα ανακατευθυνθείτε αυτόματα στο https://www.example.org. Θα σας υποδεχθεί η προεπιλεγμένη σελίδα Ghost.
Περιηγηθείτε στο για http://www.example.org/ghostνα ολοκληρώσετε την εγκατάσταση.