GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat software Ghost Blog pomocí Apache a SSL na Ubuntu 16.04

Ghost je výkonná open source platforma pro publikování a blogování, která je krásně navržena a snadno se používá. Ghost je napsán v javascriptu a jako běhové prostředí používá node.js. První verze Ghost byla vydána v roce 2013 pod licencí MIT a je neustále aktualizována. Tento tutoriál ukazuje instalaci softwaru Ghost Blog, Node.js a Apache jako SSL proxy serveru na Ubuntu 16.04.

Nodejs je open source javascriptový runtime postavený na JavaScriptovém enginu Chrome V8 (v4) pro vývoj webových aplikací na straně serveru. Nodejs je multiplatformní runtime, které lze spustit na OS X, Microsoft Windows, Linux a FreeBSD. Poskytuje architekturu řízenou událostmi a neblokující I/O model, díky kterému je lehký a efektivní pro webové aplikace v reálném čase. Projekt Node.js zahájil v roce 2009 Ryan Dahl a k dnešnímu dni dosáhl verze 6.5.0 (LTS).

Předpoklady

  • Ubuntu 16.04
  • práva root

Co budeme dělat v tomto tutoriálu:

  • Nainstalujte Node.js
  • Nainstalujte Ghost
  • Nakonfigurujte Ghost
  • Nainstalujte Apache a přidejte Ghost VirtualHost
  • Povolte SSL pro Ghost

Krok 1 – Instalace Node.js na Ubuntu

Pro tento tutoriál použijeme nodejs v4.x. Nodejs lze nainstalovat mnoha různými způsoby, jako je instalace ze zdroje nebo instalace z úložiště Ubuntu. Budu používat repozitář nodejs nodesecure https://deb.nodesource.com/node_4.x pro instalaci obsahuje aktuální software a použití úložiště umožňuje později snadno aktualizovat node.js.

Nainstalujte klíč úložiště nodesource pomocí níže uvedeného příkazu:

curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -

Poté přidejte úložiště nodejs provedením následujících příkazů:

sudo echo 'deb https://deb.nodesource.com/node_4.x xenial main' > /etc/apt/sources.list.d/nodesource.list
sudo echo 'deb-src https://deb.nodesource.com/node_4.x xenial main' >> /etc/apt/sources.list.d/nodesource.list

Aktualizujte úložiště:

sudo apt-get update

Nyní můžeme nainstalovat balíček "nodejs", který nainstaluje node.js a jeho závislosti na serveru:

sudo apt-get install -y nodejs

Nyní zkontrolujte verzi nodejs, abyste se ujistili, že instalace proběhla úspěšně:

node --version

Zkontrolujte verzi npm:

npm --version

npm je správce balíčků pro instalaci, publikování a správu programů uzlů.

Krok 2 – Instalace blogu Ghost

Nainstalujeme ghost do adresáře "/var/www/" a použijeme nejnovější verzi Ghost. Vytvořte prosím nový adresář „www“ v /var a zadejte jej pomocí „cd“:

mkdir -p /var/www/
cd /var/www/

Stáhněte si Ghost pomocí příkazu wget a poté jej rozbalte do adresáře s názvem "ghostblog" :

wget https://ghost.org/zip/ghost-latest.zip
unzip -d ghostblog ghost-latest.zip

POZNÁMKA :-d :automaticky vytvoří adresář.

Poté přejděte do adresáře ghostblog a nainstalujte Ghost pomocí npm příkaz:

cd ghostblog/
sudo npm install --production

Krok 3 – Konfigurace Ghost

Přejděte prosím do adresáře ghostblog a zkopírujte ukázkový konfigurační soubor do "config.js"

cd /var/www/ghostblog/
cp config.example.js config.js

Dále přidejte nového uživatele „ghost“. Tento uživatel bude žalován, aby spustil Ghost :

useradd -d /var/www -s /bin/bash ghost
passwd ghost
TYPE NEW PASSWORD FOR ghost USER

Poznámka:

-d =Definuje domovský adresář pro uživatele ghost v /var/www/.

-s =Definuje shell pro uživatele duchů.

Nyní změňte vlastníka instalačního adresáře ghost na uživatele "ghost".

chown -R ghost:ghost /var/www/ghostblog

Otestujte blog ghost spuštěním příkazu npm jako uživatel ghost. Přihlaste se prosím k uživatelskému ghost:

su - ghost

a přejděte do instalačního adresáře a spusťte Ghost:

cd ghostblog/
npm start --production

Ghost je nainstalován a běží na localhost s portem 2368. Můžeme to zkontrolovat příkazem curl:

curl -I localhost:2368

Můžete vidět, že duch běží - HTTP/1.1 200 OK .

Spustíme ghost jako službu, která nám usnadní spouštění ghost. Vraťte se prosím zpět k uživateli sudo/root zadáním „exit“ a vytvořte nový soubor s názvem „ghost.service“ v adresáři „/lib/systemd/system/“.

cd /lib/systemd/system/
vim ghost.service

Vložte skript systemd níže:

[Unit]
Description=ghost
After=network.target

[Service]
Type=simple
# Ghost installation Directory
WorkingDirectory=/var/www/ghostblog
User=ghost
Group=ghost
ExecStart=/usr/bin/npm start --production
ExecStop=/usr/bin/npm stop --production
Restart=always
SyslogIdentifier=Ghost

[Install]
WantedBy=multi-user.target

Dále znovu načtěte démona systemd:

systemctl daemon-reload

Poté přidejte ghost, který se má spouštět při bootování, a spusťte ghost příkazem systemctl:

systemctl enable ghost
systemctl start ghost

Zkontrolujte port 2368:

, zda je spuštěn duch
netstat -plntu

Krok 4 – Instalace Apache a Ghost VirtualHost

Nainstalujte apache pomocí příkazu apt-get:

sudo apt-get install apache2

Po dokončení instalace vytvořte nový soubor pro virtuálního hostitele ducha v adresáři "/etc/apache2/sites-available/".

sudo cd /etc/apache2/sites-available/
sudo vim ghostblog.conf

Vložte konfiguraci níže:

<VirtualHost *:80>
    #Domain Name
    ServerName ghostblog.me
    ServerAlias www.ghostblog.me

    #HTTP proxy/gateway server
    ProxyRequests off 
    ProxyPass / http://127.0.0.1:2368/ 
    ProxyPassReverse / http:/127.0.0.1:2368/     
</VirtualHost>

Uložte a ukončete.

Aktivujte modul HTTP proxy v Apache pomocí příkazu a2enmod jak je uvedeno níže:

sudo a2enmod proxy proxy_http

Nakonec musíme aktivovat virtuálního hostitele Ghost a poté restartovat apache:

sudo a2ensite ghostblog
sudo systemctl restart apache2

Restartujte ducha:

sudo systemctl restart ghost

Otestujte návštěvou domény:http://ghostblog.me

Krok 5 – Povolení SSL pro Ghost

Chcete-li povolit SSL na Apache, ujistěte se, že je v systému nainstalována knihovna OpenSSL. Vygenerujeme nový klíč a soubor crt v adresáři "/etc/apache2/certs". Nejprve vytvoříme certifikáty nového adresáře:

sudo mkdir -p /etc/apache2/certs

A vygenerujte klíč certifikátu pomocí příkazu níže:

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/certs/ghostblog.key -out /etc/apache2/certs/ghostblog.crt

Změňte prosím oprávnění souboru certifikátu:

sudo cd /etc/apache2/certs/
sudo chmod 600 *

Dále přidejte konfiguraci SSL do ghost virtualhost úpravou souboru „ghostblog.conf“.

sudo cd /etc/apache2/sites-available/
sudo vim ghostblog.conf

Níže vložte nový konfigurační skript:

<VirtualHost *:80>
    ServerName ghostblog.me
    ServerAlias www.ghostblog.me

    # Force http to https
    Redirect permanent / https://ghostblog.me/
#    ProxyRequests off 
#    ProxyPass / http://127.0.0.1:2368/ 
#    ProxyPassReverse / http:/127.0.0.1:2368/     
</VirtualHost>

<VirtualHost *:443>

   ServerName ghostblog.me

   SSLEngine on
   SSLCertificateFile /etc/apache2/certs/ghostblog.crt
   SSLCertificateKeyFile /etc/apache2/certs/ghostblog.key

   ProxyPass / http://127.0.0.1:2368/
   ProxyPassReverse / http:/127.0.0.1:2368/
   ProxyPreserveHost   On

   RequestHeader set X-Forwarded-Proto "https"

</VirtualHost>

Uložte soubor a ukončete vim.

Aktivujte modul OpenSSL apache a restartujte apache :

sudo a2enmod ssl headers
sudo systemctl restart apache2

Testování

Navštivte http://ghostblog.me a budete nuceni přejít na web HTTPS/SSL vašeho blogu.

Ghost s Apache a SSL byl úspěšně nainstalován.

Závěr

Nodejs je open source multiplatformní běhové prostředí javascriptu pro vytváření webových aplikací na straně serveru. Je lehký a efektivní pro webové aplikace v reálném čase. Ghost je blogovací platforma napsaná v Javascriptu pro Node.js. Ghost je krásně navržený a uživatelsky přívětivý. Intuitivní rozhraní usnadňuje používání tohoto blogovacího systému. Ghost lze nainstalovat samostatně nebo s webovým serverem, jako je Apache nebo Nginx. Ghost můžete zabezpečit pomocí OpenSSL. Konfigurace Ghost s Apache a OpenSSL je snadná, stačí nastavit http_proxy modul apache a vygenerovat SSL certifikát.


Ubuntu
  1. Jak nainstalovat a nakonfigurovat Nextcloud s Apache na Ubuntu 18.04

  2. Jak nainstalovat Apache Hive s Hadoop na CentOS, Ubuntu a LinuxMint

  3. Jak nainstalovat Apache Maven na Ubuntu 18.04 a 16.04

  1. Jak nainstalovat a zabezpečit phpMyAdmin pomocí Apache na Ubuntu 18.04

  2. Jak nainstalovat a nakonfigurovat ownCloud s Apache na Ubuntu 18.04

  3. Jak nainstalovat Drupal 8 s Nginx, PHP-FPM a SSL na Ubuntu 15.10

  1. Jak nainstalovat Drupal 8 s Apache, MySQL a SSL na Ubuntu 15.10

  2. Jak nainstalovat OpenCart 2 s Nginx a SSL na Ubuntu 15.10

  3. Jak nainstalovat Drupal 8.1 s Nginx, PHP-FPM a SSL na Ubuntu 16.04