Διαμόρφωση του 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
να ολοκληρώσετε την εγκατάσταση.