GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie Craft CMS unter CentOS 7

Craft ist ein in PHP geschriebenes Open-Source-CMS. Mit Craft können Sie einfach großartig aussehende Inhalte erstellen und verwalten und genau das entwerfen und erstellen, was Sie brauchen. 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 den Installationsvorgang von Craft CMS auf einem neuen CentOS-System mit Nginx als Webserver und wir sichern die Website mit einem SSL-Zertifikat von Let’s encrypt.

Anforderungen

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 Speicherplatz für PHP
  • Mindestens 200 MB freier Speicherplatz

Voraussetzungen

  • Ein Betriebssystem, auf dem CentOS 7 ausgeführt wird.
  • Ein Nicht-Root-Benutzer mit sudo-Berechtigungen.

Erste Schritte

Überprüfen Sie Ihre CentOS-Version:

cat /etc/centos-release
# CentOS Linux release 7.6.1810 (Core)

Richten Sie die Zeitzone ein:

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Aktualisieren Sie Ihre Betriebssystempakete (Software). Dies ist ein wichtiger erster Schritt, da er sicherstellt, dass Sie über die neuesten Updates und Sicherheitsfixes für die Standardsoftwarepakete Ihres Betriebssystems verfügen:

sudo yum update -y

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

sudo yum install -y curl wget vim git unzip socat

Schritt 1 – Installieren Sie PHP und erforderliche PHP-Erweiterungen

Richten Sie das Webtatic YUM-Repo ein:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Installieren Sie PHP sowie die erforderlichen PHP-Erweiterungen:

sudo yum install -y php72w php72w-cli php72w-fpm php72w-common php72w-curl php72w-gd php72w-pecl-imagick php72w-json php72w-mbstring php72w-mysql php72w-pgsql php72w-zip php72w-intl php72w-xml php72w-pdo

Überprüfen Sie die PHP-Version:

php --version

# PHP 7.2.13 (cli) (built: Dec 6 2018 23:18:37) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

Starten und aktivieren Sie den PHP-FPM-Dienst:

sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

Führen Sie sudo vim /etc/php.ini aus und legen Sie memory_limit fest auf mindestens 256MB :

memory_limit = 256M

Wir können mit dem nächsten Schritt fortfahren, nämlich der Installation und Einrichtung der Datenbank.

Schritt 2 – Installieren Sie MariaDB und erstellen Sie eine Datenbank

Craft CMS unterstützt MySQL/MariaDB- und PostgreSQL-Datenbanken. In dieser Anleitung verwenden wir MariaDB als Datenbankserver.

MariaDB-Datenbankserver installieren:

sudo yum install -y mariadb-server

Überprüfen Sie die MariaDB-Version:

mysql --version
# mysql  Ver 15.1 Distrib 5.5.60-MariaDB, for Linux (x86_64) using  readline 5.1

Starten und aktivieren Sie den MariaDB-Dienst:

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Führen Sie mysql_secure installation aus Skript zur Verbesserung der MariaDB-Sicherheit und zum Festlegen des Passworts für MariaDB root Benutzer:

sudo mysql_secure_installation

Beantworten Sie jede der Fragen:

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

Stellen Sie als Root-Benutzer eine Verbindung zur MariaDB-Shell her:

sudo mysql -u root -p
# Enter password

Erstellen Sie eine leere MariaDB-Datenbank und einen Benutzer für Craft CMS und merken Sie sich die Anmeldedaten:

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

Beenden Sie MariaDB:

mariadb> exit

Ersetzen Sie dbnameusername und password mit Ihren eigenen Namen.

Schritt 3 – Installieren Sie acme.sh Client und erhalten Sie das Let's Encrypt-Zertifikat (optional )

Das Sichern Ihrer Website mit HTTPS ist nicht erforderlich, aber es ist eine bewährte Methode, den Datenverkehr Ihrer Website zu sichern. Um ein TLS-Zertifikat von Let's Encrypt zu erhalten, verwenden wir den Acme.sh-Client. Acme.sh ist eine reine Unix-Shell-Software zum Abrufen 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 [email protected]
cd ~

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

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

Fordern Sie RSA an und ECC/ECDSA Zertifikate für Ihre Domain/Ihren Hostnamen:

# 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, werden Ihre Zertifikate und Schlüssel wird sein in:

  • Für RSA/etc/letsencrypt/example.com Verzeichnis.
  • Für ECC/ECDSA/etc/letsencrypt/example.com_ecc Verzeichnis.

Schritt 4 – Nginx installieren und konfigurieren

Craft CMS funktioniert problemlos mit vielen gängigen Webserver-Softwareprogrammen. In diesem Tutorial haben wir Nginx ausgewählt.

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

Um eine Signatur zu prüfen, muss der Nginx-Signaturschlüssel heruntergeladen und in rpm importiert werden Schlüsselbund des Programms:

wget https://nginx.org/keys/nginx_signing.key
sudo rpm --import nginx_signing.key

Um das yum-Repository für CentOS einzurichten, erstellen Sie die Datei mit dem Namen /etc/yum.repos.d/nginx_mainline.repo mit folgendem Inhalt:

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=1
enabled=1

Installieren Sie die neuesten Mainline-Nginx-Pakete:

sudo yum 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:

nginx -v
# nginx version: nginx/1.15.8

Konfigurieren Sie Nginx für Craft CMS, indem Sie Folgendes 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 127.0.0.1:9000;
    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 "";
  }

}

Ersetzen Sie example.com in der obigen Datei durch Ihren eigenen Domainnamen.

HINWEISFür eine vollständige und produktionsbereite Nginx-Konfiguration für Craft besuchen Sie https://github.com/nystudio107/nginx-craft. Die Konfiguration wurde absichtlich vereinfacht, um die Konfiguration dicht und einfach zu halten.

Nginx-Konfiguration testen:

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: Composer-Installationsbefehle werden sich in Zukunft ändern, also überprüfen Sie https://getcomposer.org/download/ für die aktuellsten Befehle, wenn die oben genannten Befehle nicht funktionieren.

Schritt 6 – Craft CMS installieren

Craft CMS kann mit Composer oder durch manuelles Herunterladen einer .zip heruntergeladen werden oder tar.gz Archiv. 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

Ändern Sie den Besitz von /var/www/craft Verzeichnis zu {Ihr_Benutzername}.

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 .

Ändern Sie den Besitz von /var/www/craft Verzeichnis nach nginx:

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

Führen Sie sudo vim /etc/php-fpm.d/www.conf aus und setzen Sie den Benutzer und die Gruppe auf nginx . Anfangs sind sie auf apache: eingestellt

sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

Erstellen Sie /var/lib/php/session/ Verzeichnis und ändern Sie den Besitz zu nginx .

sudo mkdir -p /var/lib/php/session && sudo chown -R nginx:nginx /var/lib/php/session

Gehen Sie in Ihrem Webbrowser zu http://<Hostname>/index.php?p=admin/install (durch Ersetzen von <Hostname> mit dem Hostnamen Ihres Webservers). Wenn Sie bisher alles richtig gemacht haben, sollten Sie vom Einrichtungsassistenten von Craft begrüßt werden.

Schritt 7 – Schließen Sie die Einrichtung des Craft CMS ab

Nach dem Öffnen Ihrer Installations-URL sollte die Seite wie unten angezeigt werden. Klicken Sie auf "Craft installieren" Schaltfläche:

Akzeptieren Sie die Lizenz, indem Sie auf "Verstanden" klicken Schaltfläche:

Geben Sie die Datenbankdetails ein und klicken Sie auf "Weiter" Schaltfläche:

Erstellen Sie ein Craft-Konto und klicken Sie auf "Weiter" Schaltfläche:

Richten Sie Ihre Website ein und klicken Sie auf "Fertigstellen" Schaltfläche:

Danach sollten Sie zur Craft-Admin-Seite weitergeleitet werden:

  • https://craftcms.com/
  • https://github.com/craftcms/cms
  • https://github.com/nystudio107/nginx-craft

Cent OS
  1. So installieren Sie PHP 7, 7.2 und 7.3 auf CentOS 7

  2. So installieren Sie PHP 5.5 auf CentOS

  3. So installieren Sie PHP 5.6 unter CentOS 7

  4. So installieren Sie PHP 7.3 auf CentOS 8

  5. So installieren Sie Typesetter CMS auf CentOS

So installieren Sie Bludit CMS mit NGINX unter CentOS 7

So installieren Sie Grav CMS unter CentOS 7

So installieren Sie Fork CMS mit NGINX unter CentOS 8

So installieren Sie ExpressionEngine CMS auf CentOS 8

So installieren Sie PHP 7 unter CentOS 7

So installieren Sie Craft CMS unter CentOS 7