Šifrirajmo (Certbot)
Instalirajte NodeJS
Instalirajte Nginx
Instalirajte Ghost
Neka Ghost trči
Zaključak
Ghost je platforma za blogove otvorenog koda koja postaje sve popularnija među programerima i običnim korisnicima od svog izdanja 2013. godine. Stavlja fokus na sadržaj i bloganje . Najprivlačnija stvar kod Ghost-a je njegov jednostavan, čist i prilagodljiv dizajn. Svoje postove na blogu možete pisati s mobilnog telefona. Sadržaj za Ghost je napisan korištenjem Markdown jezika.
U ovom vodiču ćemo postaviti i implementirati Ghost blog na Debian 8.7 VPS koristeći Let's Encrypt, Node.js i Nginx.
Šifrirajmo (Certbot)
Prije nego započnete ovaj korak, provjerite jeste li postavili DNS zapise za svoju domenu.
Sustav ažuriranja:
apt update && apt upgrade -y
Instalirajte potrebne alate:
apt install -y zip build-essential
Omogućite Jessie backports repo. Pokrenite apt edit-sourcesi zalijepite donji redak na kraju /etc/apt/sources.listdatoteke:
# Copy/Paste the below line at the end of file
deb http://ftp.debian.org/debian jessie-backports main
Osvježite izvore paketa:
apt update
Instalirajte Certbot (aka Let's Encrypt klijent):
apt install -y certbot -t jessie-backports
Provjerite verziju:
certbot --version
# certbot 0.9.3
Dobiti certifikat:
certbot certonly -d example.com -d www.example.com --email john.doe@mail.com --agree-tos --standalone
Nakon prolaska kroz prethodne korake, vaš certifikat i privatni ključ bit će u /etc/letsencrypt/live/example.comimeniku.
Instalirajte NodeJS
Ghost trenutno podržava samo verzije čvora 0.12.x , 4.2+ i 6.9+ .
Instalirat ćemo preporučenu verziju za Ghost koja je v4 argon LTSu vrijeme pisanja ovog teksta.
Preuzmite i instalirajte LTS verziju Node.js:
curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
apt install -y nodejs
Provjerite verziju čvora i NPM-a:
node -v && npm -v
# v4.7.2
# 2.15.11
Instalirajte Nginx
Preuzmite i instalirajte Nginx:
apt install nginx -t jessie-backports
Provjerite verziju Nginxa:
nginx -v
# nginx version: nginx/1.9.10
Pokrenite Nginx uslugu i provjerite status:
systemctl start nginx
systemctl status nginx
Konfigurirajte Nginx kao obrnuti proxy:
vi /etc/nginx/conf.d/ghost.conf
Zalijepite sljedeće u /etc/nginx/conf.d/ghost.conf:
server {
listen 80;
listen [::]:80;
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name example.com www.example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://127.0.0.1:2368;
}
}
Provjerite sintaksu:
nginx -t
Ponovno učitajte Nginx:
systemctl reload nginx
Instalirajte Ghost
Ako želite ugostiti više Ghost blogova na istom VPS-u, svaka Ghost instanca mora biti pokrenuta na zasebnom portu.
Napravite webrootimenik:
mkdir -p /var/www/
Stvorite Ghost korisnika:
adduser ghost
Preuzmite i instalirajte Ghost:
cd /var/www
wget https://ghost.org/zip/ghost-latest.zip
unzip ghost-latest.zip -d ghost
chown -R ghost:ghost /var/www/ghost/
rm ghost-latest.zip
Prebacite se na ghostkorisnika:
su - ghost
Instaliraj Ghost:
cd /var/www/ghost
npm install --production
Konfigurirajte Ghost promjenom urlsvojstva productionobjekta unutar config.jsdatoteke:
cp config.example.js config.js
vi config.js
config = {
// ### Production
// When running Ghost in the wild, use the production environment.
// Configure your URL and mail settings here
production: {
url: 'https://example.com',
...
}
...
...
NOTE: You should configure mail also. Consult the official Ghost documentation on how to do that.
Spremite config.jsdatoteku i izađite.
Pokreni Ghost:
npm start --production
Ghost sada radi na vašem poslužitelju. I front-end bloga i admin sučelje su osigurani HTTPS-om, a HTTP/2 također radi. Možete otvoriti svoj preglednik i posjetiti svoju stranicu na adresi https://example.com. Ne zaboravite zamijeniti example.comsvojim imenom domene.
Neka Ghost trči
Ako zatvorite terminalsku sesiju na vašem VPS-u , vaš blog će se također pokvariti. To nije dobro. Da bismo to izbjegli, koristit ćemo Forever upravitelj procesa. Tako će vaš blog biti aktivan 24 sata dnevno.
Prebacite se na ghostkorisnika:
su - ghost
Idite u /var/www/ghostmapu:
cd /var/www/ghost
Instaliraj zauvijek:
npm install forever
Dodajte novu forevernaredbu svojoj putanji:
echo "export PATH=/var/www/ghost/node_modules/forever/bin:$PATH" >> ~/.bashrc
source ~/.bashrc
Započni Ghost s Forever:
NODE_ENV=production /var/www/ghost/node_modules/forever/bin/forever start index.js
U ovom trenutku, forevertrebao je pokrenuti Ghost.
Idite na https://example.com/ghosti stvorite Ghost administratorski račun. Učinite to što je prije moguće.
Zaključak
To je to. Sada imamo potpuno funkcionalan Ghost blog. Ako želite promijeniti zadanu Ghost temu pod nazivom Casper u prilagođenu, možete jednostavno preuzeti i raspakirati temu u /var/www/ghost/content/themesmapu i odabrati je putem Ghost administratorskog sučelja, koji se nalazi na https://example.com/ghost.