Wie man Craft CMS auf Ubuntu 18.04 LTS installiert

Craft ist ein Open-Source-CMS, das in PHP geschrieben wurde. Mit Craft können Sie auf einfache Weise großartig aussehende Inhalte erstellen und verwalten sowie genau das entwerfen und bauen, was Sie benötigen. Es ist ein sicheres und skalierbares CMS mit einem großen Plugin-Ökosystem und der Craft-Quellcode wird auf GitHub gehostet. Dieses Tutorial führt Sie durch die Installation von Craft CMS auf einem neuen Ubuntu 18.04 LTS-Server mit Nginx als Webserver und wir sichern die Website mit einem Let’s encrypt SSL-Zertifikat.

Anforderungen

Das Handwerk erfordert folgendes:

  • PHP Version 7.0 oder höher mit den folgenden PHP-Erweiterungen: (ctype, cURL, GD oder ImageMagick, iconv, JSON, Multibyte String, OpenSSL, PCRE, PDO MySQL Driver oder PDO PostgreSQL Driver, PDO, Reflection, SPL, Zip, Intl, DOM)
  • MySQL 5.5+ mit InnoDB, MariaDB 5.5+ oder PostgreSQL 9.5+.
  • Mindestens 256 MB Arbeitsspeicher, der PHP zugewiesen ist.
  • Mindestens 200 MB freier Festplattenspeicherplatz

Voraussetzungen

  • Ein Betriebssystem mit Ubuntu 18.04.
  • Ein Nicht-Root-Benutzer mit sudo-Rechten.

Erste Schritte

Überprüfen Sie Ihre Ubuntu-Version:

lsb_release -ds
# Ubuntu 18.04.1 LTS

Richten Sie die Zeitzone ein:

sudo dpkg-reconfigure tzdata

Aktualisieren Sie Ihre Betriebssystempakete (Software). Dies ist ein wichtiger erster Schritt, denn es stellt sicher, dass Sie die neuesten Updates und Sicherheitsfixes für die Standardsoftwarepakete Ihres Betriebssystems erhalten:

sudo apt update && sudo apt upgrade -y

Installieren Sie einige wichtige Pakete, die für die grundlegende Verwaltung des Ubuntu-Betriebssystems erforderlich sind:

sudo apt install -y curl wget vim git unzip socat

Schritt 1 – Installieren Sie PHP und die erforderlichen PHP-Erweiterungen.

Installieren Sie PHP sowie die notwendigen PHP-Erweiterungen:

sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-curl php7.2-gd php-imagick php7.2-json php7.2-mbstring php7.2-mysql php7.2-pgsql php7.2-zip php7.2-intl php7.2-xml

Überprüfen Sie die PHP-Version:

php --version

 

# PHP 7.2.10-0ubuntu0.18.04.1 (cli) (built: Sep 13 2018 13:45:02) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
#     with Zend OPcache v7.2.10-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies

Ausführen sudo vim /etc/php/7.2/fpm/php.iniund auf mindestens 256MB. einstellenmemory_limit:

memory_limit = 256M

Der PHP-FPM-Dienst wird beim Neustart auf dem Ubuntu 18.04-System automatisch gestartet und aktiviert, so dass es nicht notwendig ist, ihn manuell zu starten und zu aktivieren. Wir können zum nächsten Schritt übergehen, nämlich der Installation und Einrichtung der Datenbank.

Schritt 2 – MySQL/MariaDB installieren und eine Datenbank erstellen

Craft CMS unterstützt MySQL/MariaDB und PostgreSQL Datenbanken. In diesem Tutorial werden wir MySQL als Datenbankserver verwenden.

Installieren Sie den MySQL-Datenbankserver:

sudo apt install -y mysql-server

Überprüfen Sie die MySQL-Version:

mysql --version
# mysql  Ver 14.14 Distrib 5.7.24, for Linux (x86_64) using  EditLine wrapper

Laufenmysql_secure installationSkript zur Verbesserung der MySQL-Sicherheit und zur Festlegung des Passworts für MySQLrootBenutzer:

sudo mysql_secure_installation

Beantworten Sie jede der Fragen:

Would you like to setup VALIDATE PASSWORD plugin? N
New password: your_secure_password
Re-enter new password: your_secure_password
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Verbinden Sie sich mit der MySQL-Shell als root-Benutzer:

sudo mysql -u root -p
# Enter password

Erstellen Sie eine leere MySQL-Datenbank und einen leeren Benutzer für Craft CMS und merken Sie sich die Zugangsdaten:

mysql> CREATE DATABASE dbname;
mysql> GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;

Beenden von MySQL:

mysql> exit

Ersetzen dbnameSie, usernameund passworddurch Ihre eigenen Namen.

Schritt 3 – Client installierenacme.shund Let’s Encrypt Zertifikat erhalten (optional)

Die Sicherung Ihrer Website mit HTTPS ist nicht notwendig, aber es ist eine gute Vorgehensweise, um den Traffic Ihrer Website zu sichern. Um das TLS-Zertifikat von Let’s Encrypt zu erhalten, werden wir den Acme.sh-Client verwenden. Acme.sh ist eine reine Unix-Shell-Software zum Erhalten von TLS-Zertifikaten von Let’s Encrypt ohne Abhängigkeiten.

Laden Sie Acme.sh herunter und installieren Sie es:

sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh 
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail your_email@example.com
cd ~

Überprüfen Sie die Version von Acme.sh:

/etc/letsencrypt/acme.sh --version
# v2.8.0

Besorgen Sie sich RSA- und ECC/ECDSA-Zertifikate für Ihre Domain/Hostname:

# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength 2048
# ECDSA
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength ec-256

Nachdem Sie die obigen Befehle ausgeführt haben, wird IhrZertifikateundSchlüsselwird drin sein:

  • Für RSA:/etc/letsencrypt/example.comVerzeichnis.
  • Für ECC/ECDSA:/etc/letsencrypt/example.com_eccVerzeichnis.

Schritt 4 – Installation und Konfiguration von Nginx

Craft CMS kann mit vielen gängigen Webserver-Softwareprodukten gut funktionieren. In diesem Tutorial haben wir Nginx ausgewählt.

Laden Sie die neueste Mainline-Version von Nginx aus dem offiziellen Nginx-Repository herunter und installieren Sie sie.

Starten Sie, indem Sie den PGP-Schlüssel des Nginx-Repositorys herunterladen:

wget https://nginx.org/keys/nginx_signing.key

Schlüssel zumaptProgrammschlüsselring hinzufügen:

sudo apt-key add nginx_signing.key

Hinzufügen und Einrichten des Nginx Mainline APT Repository:

sudo -s
printf "deb https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\ndeb-src https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\n" >> /etc/apt/sources.list.d/nginx_mainline.list
exit

Aktualisieren Sie die Repository-Liste:

sudo apt update

Installieren Sie die neuesten Mainline-Nginx-Pakete:

sudo apt install -y nginx nginx-module-geoip nginx-module-image-filter nginx-module-njs nginx-module-perl nginx-module-xslt

Starten und aktivieren Sie den Nginx-Dienst:

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Überprüfen Sie die Nginx-Version:

sudo nginx -v
# nginx version: nginx/1.15.8

Konfigurieren Sie Nginx for Craft CMS, indem Sie es ausführen:

sudo vim /etc/nginx/conf.d/craft.conf

Und füllen Sie die Datei mit der folgenden Konfiguration:

server {
listen 80;
listen [::]:80;
listen 443 ssl;
listen [::]:443 ssl;

server_name example.com www.example.com;

root /var/www/craft/web;

index index.php;

ssl_certificate /etc/letsencrypt/example.com/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com/example.com.key;
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/example.com.key;

location / {
try_files $uri/index.html $uri $uri/ /index.php?$query_string;
}

location ~ [^/]\.php(/|$) {
try_files $uri $uri/ /index.php?$query_string;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param HTTP_PROXY "";
}

}

HINWEIS: Für eine vollständige und produktionsreife Nginx-Konfiguration für Handwerk besuchen Sie https://github.com/nystudio107/nginx-craft. Die Konfiguration ist bewusst vereinfacht, um die Konfiguration dicht und einfach zu halten.

Datei öffnen nginx.confund userauf www-data. setzen

sudo vim /etc/nginx/nginx.conf
user www-data www-data;

Testen Sie die Nginx-Konfiguration:

sudo nginx -t

Nginx neu laden:

sudo systemctl reload nginx.service

Schritt 5 – Composer installieren

Installieren Sie Composer, den PHP-Abhängigkeitsmanager global:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '93b54496392c062774670ac18b134c3b3a95e5a5e5c8f1a9f115f203b75bf9a129d5daa8ba6a13e2cc8a1da0806388a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

php composer-setup.php

php -r "unlink('composer-setup.php');"

sudo mv composer.phar /usr/local/bin/composer

Überprüfen Sie die Composer-Version:

composer --version
# Composer version 1.8.0 2018-12-03 10:31:16

HINWEIS:Die Installationsbefehle des Composer werden sich in Zukunft ändern, also überprüfen Sie https://getcomposer.org/download/ für die aktuellsten Befehle, wenn die obigen Befehle nicht funktionieren.

Schritt 6 – Craft CMS installieren

Craft CMS kann mit Composer oder durch manuelles Herunterladen eines .zipoder tar.gzmehrerer Archive heruntergeladen werden. In diesem Tutorial werden wir Composer verwenden, um Craft CMS herunterzuladen.

Erstellen Sie ein Dokumentenstammverzeichnis, in dem sich Craft CMS befinden soll:

sudo mkdir -p /var/www/craft

Navigieren Sie zum Stammverzeichnis des Dokuments:

cd /var/www/craft

Wechseln Sie den Eigentümer des/var/www/craftVerzeichnis zujohndoe.

sudo chown -R [your_username]:[your_username] /var/www/craft

Um ein neues Craft-Projekt zu erstellen, führen Sie diesen Befehl aus:

composer create-project craftcms/craft .

Wechseln Sie den Eigentümer des/var/www/craftVerzeichnis zuwww-data:

sudo chown -R www-data:www-data /var/www/craft

Gehen Sie in Ihrem Webbrowser zuhttp://<Hostname>/index.php?p=admin/install(ersetzende<Hostname>mit dem Hostnamen Ihres Webservers). Wenn du bisher alles richtig gemacht hast, solltest du vom Setup Wizard von Craft begrüßt werden.

Schritt 7 – Vervollständigen Sie das Craft CMS-Setup.

Nach dem Öffnen Ihrer Installations-URL sollte die folgende Seite erscheinen. Klicken Sie auf die Schaltfläche „Handwerk installieren“:

Starten Sie die Installation des Bootes

Akzeptieren Sie die Lizenz, indem Sie auf die Schaltfläche „Got it“ klicken:

Akzeptieren Sie die Lizenz

Geben Sie die Daten der Datenbank ein und klicken Sie auf die Schaltfläche „Weiter:

Verbindung zur Datenbank

Erstellen Sie ein Handwerkskonto und klicken Sie auf die Schaltfläche „Weiter“:

Einen Benutzer anlegen

Richten Sie Ihre Website ein und klicken Sie auf die Schaltfläche „Fertigstellen“:

Standortinformationen hinzufügen

Danach solltest du auf die Craft-Administrationsseite weitergeleitet werden:

Craft CMS Dashboard

Links

Das könnte Dich auch interessieren …