Kako instalirati Ghost (CMS) platformu za objavljivanje blogova u CentOS 7


Ghost je besplatan, otvoreni izvor i jednostavan, ali moćan softver za blogovanje ili online objavljivanje napisan u Nodejs. To je kolekcija modernih alata za izdavaštvo dizajniranih za jednostavnu izradu i pokretanje online publikacija.

Karakteristike duhova:

  • Brz, skalabilan i efikasan.
  • Nudi okruženje za uređivanje zasnovano na smanjenju.
  • Dolazi sa desktop aplikacijom.
  • Dolazi sa prekrasnim predlošcima upravljača.
  • Podržava jednostavno upravljanje sadržajem.
  • Podržava višestruke uloge za autore, urednike i administratore.
  • Omogućava unaprijed zakazivanje sadržaja.
  • Podržava ubrzane mobilne stranice.
  • U potpunosti podržava optimizaciju za pretraživače.
  • Pruža detaljne strukturirane podatke.
  • Podržava pretplate putem RSS-a, e-pošte i Slack-a.
  • Omogućava jednostavno uređivanje stranice i još mnogo toga.

Zahtjevi:

  1. Minimalna instalacija CentOS 7 servera sa 1 GB memorije
  2. CentOS 7 sistem sa statičkom IP adresom
  3. Node v6 LTS – Instalirajte najnoviji Node.js i NPM u CentOS 7
  4. CentOS 7 server sa instaliranim Nginxom

Važno: Prije nego što sami počnete instalirati Ghost, morat ćete imati dobar VPS hosting, toplo preporučujemo BlueHost.

U ovom članku ćemo objasniti kako instalirati platformu za blogovanje Ghost (Content Management System) otvorenog koda na CentOS 7 sistemu.

Korak 1: Instaliranje Nodejsa na CentOS 7

1. Nodejs nije dostupan u softverskim repozitorijumima CentOS-a, stoga prvo dodajte njegova spremišta, a zatim instalirajte kako slijedi

curl --silent --location https://rpm.nodesource.com/setup_6.x | bash -
yum -y install nodejs npm
dnf -y install nodejs npm   [On Fedora 22+ versions]

2. Kada se nodejs instalira, možete provjeriti da imate instaliranu preporučenu verziju Nodejs i npm koristeći komande.

node -v 
npm -v

Korak 2: Instaliranje Ghost-a na CentOs 7

3. Sada kreirajte Ghost root direktorij koji će pohraniti datoteke aplikacije u /var/www/ghost, što je preporučena lokacija za instalaciju.

mkdir -p /var/www/ghost

4. Zatim preuzmite najnoviju verziju Ghost-a iz Ghostovog GitHub spremišta i raspakirajte arhivsku datoteku u direktorij koji ste upravo kreirali iznad.

curl -L https://ghost.org/zip/ghost-latest.zip -o ghost.zip
unzip -uo ghost.zip -d  /var/www/ghost

5. Sada pređite na novi direktorij ghost i instalirajte Ghost (samo proizvodne ovisnosti) sa sljedećim komandama. Kada se druga komanda završi, Ghost bi trebao biti instaliran na vašem sistemu.

cd /var/www/ghost 
npm install --production

Korak 3: Pokrenite i pristupite zadanom blogu Ghost

6. Da pokrenete Ghost, pokrenite sljedeću naredbu iz direktorija /var/www/ghost.

npm start --production

7. Prema zadanim postavkama, Ghost bi trebao biti pokrenut na portu 2368, stoga otvorite port na zaštitnom zidu da omogućite pristup.

firewall-cmd --zone=public --permanent --add-port=2368/tcp
firewall-cmd --reload

8. Sada otvorite web pretraživač i idite na bilo koji od sljedećih URL-ova u nastavku.

http://SERVER_IP:2368
OR
http://localhost:2368

Napomena: Nakon što pokrenete Ghost po prvi put, datoteka config.js će biti kreirana u korijenskom direktoriju Ghost-a. Možete ga koristiti za postavljanje konfiguracije nivoa okruženja za duh; gdje možete konfigurirati opcije kao što su URL vaše stranice, baza podataka, postavke pošte itd.

Korak 4: Instalirajte i konfigurirajte Nginx za Ghost

Instalirajte i pokrenite Nginx web server, ako nije instaliran pomoću EPEL repozitorija kao što je prikazano.

yum install epel-release
yum install nginx
systemctl start nginx

Ako koristite zaštitni zid, koristite sljedeće komande da omogućite pristup HTTP i HTTPS saobraćaju.

firewall-cmd --permanent --zone=public --add-service=http 
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload

Sljedeći korak je da konfigurišete Nginx da server naš Ghost blog na portu 80, tako da korisnici mogu pristupiti Ghost blogu bez dodavanja porta :2368 na kraju URL-a.

Prvo zaustavite pokrenutu Ghost instancu pritiskom na tipke CTRL+C na terminalu.

Sada konfigurišite Nginx kreiranjem novog fajla pod /etc/nginx/sites-available/ghost.

vi /etc/nginx/sites-available/ghost

Dodajte sljedeću konfiguraciju i provjerite jeste li promijenili sljedeće označene redove u your_domain_or_ip_address.

server {
    listen 80;
    server_name your_domain_or_ip_address;
    location / {
    proxy_set_header HOST $host;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass         http://127.0.0.1:2368;
    }
}

Sačuvajte datoteku i aktivirajte ovu konfiguraciju kreiranjem simbolične veze u /etc/nginx/sites-enabled direktorijumu.

ln -s /etc/nginx/sites-available/ghost /etc/nginx/sites-enabled/ghost

Sada otvorite datoteku /etc/nginx.conf. uključite konfiguracijske datoteke u direktorij sites-enabled i onemogućite zadanu lokaciju kao što je prikazano.

vi /etc/nginx/nginx.conf

Sada dodajte sljedeći red unutar http bloka da biste uključili konfiguracijske datoteke u sites-enabled direktorij.

http {
...
    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;

Zatim potpuno komentirajte zadani blok servera koji se nalazi unutar http bloka.

...

    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;


   server {
      listen       80 default_server;
      listen       [::]:80 default_server;
      server_name  _;
      root         /usr/share/nginx/html;
#
      # Load configuration files for the default server block.
      include /etc/nginx/default.d/*.conf;
#
      location / {
      }
#
      error_page 404 /404.html;
          location = /40x.html {
      }
#
      error_page 500 502 503 504 /50x.html;
          location = /50x.html {
      }
...
...

Konačno, sačuvajte i ponovo pokrenite nginx web server.

systemctl restart nginx

Još jednom posjetite http://your_domain_or_ip_address i vidjet ćete svoj blog Ghost.

Za više informacija idite na početnu stranicu Ghost: https://ghost.org/

U ovom članku smo objasnili kako da instalirate i konfigurišete Ghost u CentOS 7. Koristite formular za komentare ispod da biste nam poslali svoje upite ili bilo kakva razmišljanja o vodiču.

Na kraju, ali ne i najmanje važno, u našem sljedećem postu pokazat ćemo kako postaviti Ghost u Debian i Ubuntu. Do tada, ostanite povezani s linux-console.net.