GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren Sie die Ghost Blog-Software mit Apache und SSL unter Ubuntu 15.10

Nodejs ist eine Open-Source-JavaScript-Laufzeitumgebung, die auf der V8-JavaScript-Engine (v4) von Chrome zur Entwicklung serverseitiger Webanwendungen basiert. Nodejs ist eine plattformübergreifende Laufzeitumgebung, die unter OS X, Microsoft Windows, Linux und FreeBSD ausgeführt werden kann. Es bietet eine ereignisgesteuerte Architektur und ein nicht blockierendes E/A-Modell, das es leicht und effizient für Echtzeit-Webanwendungen macht. Das Node.js-Projekt wurde 2009 von Ryan Dahl gestartet und hat heute die Version 4.2.0 (LTS) erreicht.

Ghost ist eine leistungsstarke Open-Source-Publishing- und Blog-Plattform, die wunderschön gestaltet und einfach zu bedienen ist. Ghost ist in Javascript geschrieben und verwendet node.js als Laufzeitumgebung. Ghost wurde 2013 unter MIT-Lizenz veröffentlicht.

Voraussetzungen

  • Ubuntu 15.10
  • Root-Rechte

Was wir in diesem Tutorial tun werden:

  • Node.js installieren
  • Ghost installieren
  • Ghost konfigurieren
  • Installieren Sie Apache und fügen Sie den Ghost VirtualHost hinzu
  • SSL für Ghost aktivieren

Schritt 1 – Node.js auf Ubuntu installieren

Für dieses Tutorial verwenden wir node.js v0.12. Node.js kann aus der Quelle oder aus dem Repository von nodesource.com installiert werden. Wir verwenden das node.js-Repository  https://deb.nodesource.com/node_0.12 für die Installation.

Bitte fügen Sie das Repository hinzu und aktualisieren Sie es, indem Sie den folgenden Befehl ausführen:

curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -

Als nächstes installiere node.js mit apt:

sudo apt-get install -y nodejs

Überprüfen Sie nun die Version von node.js:

node --version

v0.12.7

Und überprüfen Sie die npm-Version:

npm --version

2.11.3

Npm ist der node.js-Paketmanager, der zum Installieren, Veröffentlichen und Verwalten von Knotenprogrammen verwendet wird.

Schritt 2 – Ghost-Blog installieren

Wir werden Ghost im Verzeichnis "/var/www/" installieren und die neueste Version von Ghost verwenden. Bitte erstellen Sie ein neues Verzeichnis „www“ in /var und geben Sie es mit „cd“ ein:

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

Laden Sie Ghost mit dem Befehl wget herunter und extrahieren Sie es dann in ein Verzeichnis namens "ghostblog" :

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

HINWEIS :-d :Erstellt automatisch das Verzeichnis.

Wechseln Sie dann in das Ghostblog-Verzeichnis und installieren Sie Ghost mit dem npm Befehl als root/sudo:

cd ghostblog/
npm install --production

Schritt 3 - Ghost konfigurieren

Bitte gehen Sie in das Ghostblog-Verzeichnis und kopieren Sie dann die Konfigurationsbeispieldatei nach "config.js"

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

Öffnen Sie nun die Konfigurationsdatei mit dem vim-Editor:

vim config.js

Im Serverblock (Zeile 27) , ändern Sie den Hostwert in 0.0.0.0 .

host = 0.0.0.0

Damit von außen auf das Blog zugegriffen werden kann. Speichern und beenden.

Fügen Sie dann den neuen Benutzer „Geist“ hinzu. Dieser Benutzer wird verwendet, um Ghost auszuführen:

sudo adduser --shell /bin/bash ghost
ENTER YOUR PASSWORD

Ändern Sie nun den Eigentümer für das Ghost-Installationsverzeichnis auf den Benutzer "ghost".

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

Testen Sie den Ghost-Blog, indem Sie den Befehl npm als Ghost-Benutzer ausführen. Bitte melden Sie sich beim Benutzer Ghost an:

su - ghost

Und gehen Sie in das Installationsverzeichnis von Ghost und starten Sie es:

cd /var/www/ghostblog
npm start --production

Besuchen Sie die Server-IP auf Port 2368, in meinem Fall:192.168.1.104:2368


Um uns das Starten von Ghost zu erleichtern, werden wir einen Systemdienst zum Ausführen von Ghost erstellen. Bitte gehen Sie zurück zum sudo/root-Benutzer und erstellen Sie eine neue Datei mit dem Namen „ghost.service“ im Verzeichnis „/lib/systemd/system/“.

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

Fügen Sie das folgende systemd-Skript ein:

[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

Und speichern Sie die Datei. Laden Sie dann den systemd-Daemon neu:

sudo systemctl daemon-reload

Fügen Sie den Ghost-Dienst hinzu, um beim Booten automatisch zu starten, und starten Sie Ghost mit dem Befehl systemctl:

sudo systemctl enable ghost
sudo systemctl start ghost

Schritt 4 – Installieren Sie Apache und den Ghost VirtualHost

Installieren Sie Apache mit dem apt-get-Befehl:

sudo apt-get install apache2

Erstellen Sie nach Abschluss der Installation eine neue Datei für den virtuellen Ghost-Host im Verzeichnis "/etc/apache2/sites-available/".

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

Fügen Sie die Konfiguration unten ein:

<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>

Speichern und beenden.

Aktivieren Sie das HTTP-Proxy-Modul in Apache mit dem Befehl a2enmod wie unten gezeigt:

sudo a2enmod proxy proxy_http

Schließlich müssen wir den virtuellen Ghost-Host aktivieren und dann Apache neu starten:

sudo a2ensite ghostblog
sudo systemctl restart apache2

Ghost neu starten:

sudo systemctl restart ghost

Testen Sie, indem Sie die Domain besuchen:http://ghostblog.me

Schritt 5 – SSL für Ghost aktivieren

Um SSL auf Apache zu aktivieren, stellen Sie bitte sicher, dass die openssl-Bibliothek auf dem System installiert ist. Wir werden einen neuen Schlüssel und eine neue crt-Datei im Verzeichnis „/etc/apache2/certs“ generieren. Zuerst erstellen wir neue Verzeichniszertifikate:

sudo mkdir -p /etc/apache2/certs

Und generieren Sie den Zertifikatsschlüssel mit dem folgenden Befehl:

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

Bitte ändern Sie die Berechtigung der Zertifikatsdatei:

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

Fügen Sie als Nächstes die SSL-Konfiguration zu Ghost Virtualhost hinzu, indem Sie die "ghostblog.conf"-Datei bearbeiten.

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

Fügen Sie das neue Konfigurationsskript unten ein:

<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>

Speichern und beenden.

Aktivieren Sie das OpenSSL-Apache-Modul und starten Sie Apache neu:

sudo a2enmod ssl headers
sudo systemctl restart apache2

Testen

Besuchen Sie http://ghostblog.me , und Sie werden zur HTTPS/SSL-Site Ihres Blogs gezwungen.

Ghost mit Apache und SSL ist nun erfolgreich installiert.

Schlussfolgerung

Nodejs ist eine plattformübergreifende Open-Source-Javascript-Runtine zum Erstellen serverseitiger Webanwendungen. Es ist leicht und effizient für Echtzeit-Webanwendungen. Ghost ist eine in Javascript geschriebene Blogging-Plattform für Node.js. Ghost ist wunderschön gestaltet und benutzerfreundlich. Die intuitive Benutzeroberfläche macht dieses Blog-System einfach zu bedienen. Ghost kann eigenständig oder mit einem Webserver wie Apache oder Nginx installiert werden. Sie können Ghost mit openssl sichern. Die Konfiguration von Ghost mit Apache und OpenSSL ist einfach, Sie müssen lediglich das http_proxy-Modul von Apache einrichten und ein SSL-Zertifikat generieren.


Ubuntu
  1. So installieren und konfigurieren Sie Nextcloud mit Apache unter Ubuntu 18.04

  2. So installieren und sichern Sie phpMyAdmin mit Apache unter Ubuntu 18.04

  3. So installieren Sie die Ghost Blog-Software mit Apache und SSL unter Ubuntu 16.04

  4. So installieren Sie Apache Hive mit Hadoop auf CentOS, Ubuntu und LinuxMint

  5. So installieren Sie Apache Maven unter Ubuntu 18.04 und 16.04

So installieren Sie Concrete5 CMS mit Apache und kostenlosem Lets Encrypt SSL unter Ubuntu 20.04

So installieren Sie ProjectSend mit Apache und Lets Encrypt SSL unter Ubuntu 20.04

So installieren Sie PrestaShop auf Ubuntu 20.04 mit Apache

So installieren Sie Let’s Encrypt SSL auf Ubuntu mit Apache

So installieren Sie Drupal mit Apache auf Debian und Ubuntu

So installieren Sie Django 3.2 auf Ubuntu 20.04 mit Apache und WSGI